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

标签 java jframe

我用 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/

相关文章:

java - 我需要有关 Java JFrame 的一些帮助

java - JFrame 背景颜色不显示

java - 将 JFrame 设置为完全不活动,直到关闭另一个 Jframe

java - JButton不会显示

java - 从套接字获取十六进制值并转换为十进制

java - JTextArea 未从另一个类更新

java - 尝试使用 Renjin 在 java 中执行 R 脚本时出现异常

java - Android如何在 GridView 的每个元素上应用翻转旋转动画?

java - 从回调内部重新抛出 Throwable

java - 我想显示数据库 JAVA Jframe 中的用户名