更改按钮的颜色太慢

时间:2011-11-22 00:06:08

标签: java colors

我正在为我的编程课制作一个Reversi游戏,我想尝试在游戏中实现一台计算机。我成功地完成了这项工作,但计算机立即行动,因此你无法看到你的行动是如何运作的。

我尝试使用以下方法解决此问题:

public void wait (int n) {
    long t0, t1;
    t0 = System.currentTimeMillis();
    do {
        t1 = System.currentTimeMillis();
    } while ((t1-t0) < n);
}

然后我在玩家移动之后调用此方法,就在它调用我的computerAI()方法之前。

然而,它没有正常工作,似乎它在更改电路板颜色之前就等了,因为播放器点击,背景变为默认的浅灰色,然后等待一秒钟后,它会执行移动和计算机的颜色变化。

任何人都有解决这个问题的建议吗?

2 个答案:

答案 0 :(得分:0)

使用:

Thread.sleep(5000);

这会导致当前线程休眠5秒钟。

答案 1 :(得分:0)

您可能不仅需要更改按钮的颜色属性,还需要经常调用其​​.repaint()甚至.update()方法,例如每100毫秒。也就是说,您需要在需要时使按钮实际重绘在屏幕上,而不是在系统确定有时间呈现累积更改时。