gpt4 book ai didi

java - 在 JFrame 中一次显示一个对象,或逐帧显示对象

转载 作者:行者123 更新时间:2023-12-02 08:21:18 25 4
gpt4 key购买 nike

我用 Java (eclipse) 编写了一个程序,它使用 JFrame 在网格上显示正方形和三角形。程序确定对象在“for 循环”中的位置。我想让对象一次出现一个(以逐帧类型的方法)。看来应该使用“ sleep 循环”来解决这个问题。但是我觉得对 java.awt* 缺乏理解;给我带来了问题。我将以下内容添加到我的“for 循环”

try<br/>
{<br/>
Thread.sleep(1000); // do nothing for 1000 miliseconds (1 second)<br/>
}<br/>
catch(InterruptedException e)<br/>
{<br/>
e.printStackTrace();<br/>
}

程序会等待,但在完成 sleep 后立即绘制所有对象。我已经检查了我的程序,发现这个“ sleep ”命令在某种程度上起作用(在处理下一个命令之前等待)我在所述“for循环”中放置了一个 println 语句来测试它,程序在打印每个命令之前等待一秒钟打印。但我不知道为什么 JFrame 最后只绘制一次所有内容。每次我想显示新帧时是否应该使用像 repaint() 这样的东西?

我的项目结构是 3 个类。 Main 只是调用 DisplayFrame。 DisplayFrame 用于设置 Frame。和 MyComponent,其中包含我的“for 循环”和“ sleep 命令”。

如有任何帮助,我们将不胜感激。

最佳答案

有教程here它使用 Timer 定期更新图像。示例程序是一个小程序,但原理是一样的。

关于java - 在 JFrame 中一次显示一个对象,或逐帧显示对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5410253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com