大家好我正在做一个线程来更新 JFrame 上的球所以我重新绘制屏幕...然后绘制球更新其位置..然后再次绘制屏幕...绘制球和相同的循环...这是代码
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
Thread t = new Thread()
{
public void run()
{
while(true)
{
repaint();
b2.update(ob,2);
b2.paint(ob.getGraphics());
b2.setT(b2.getT() + 1);
try {
Thread.sleep(50);
} catch (InterruptedException ex) {
System.out.println("Error in Sleeping");
}
}
}
};
t.start();
}
但问题是我看不到球...屏幕的油漆总是覆盖球并且球就像在 Jframe 下一样..
最佳答案
如果您想在 Swing 中使用动画,推荐使用的类是 javax.swing.Timer
。此类允许您定期对事件调度线程执行操作。
- Swing
Timer
tutorial - 安 animation example在 SO 上发布(在 SO btw 的 Swing wiki 中链接)
关于java - 在 JFrame Java 中闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13779392/