gpt4 book ai didi

java - 在 Swing 中进行实时/动态更改

转载 作者:行者123 更新时间:2023-11-29 03:51:17 24 4
gpt4 key购买 nike

我正在制作一个包含方 block (面板网格)的游戏,当游戏结束时,有一种算法会以“实时”方式一个一个地改变面板的颜色,用户可以在其中观看方 block 的变化慢慢上色。我尝试类似的东西:

Thread.sleep(1000);      

grid.getComponent(boxNumber).setBackground(Color.YELLOW);

Thread.sleep(1000);

grid.getComponent(boxNumber).setBackground(Color.ORANGE);

虽然盒子的颜色变成了黄色,但之后它并没有变成橙色。有人有主意吗?希望我能说清楚。

最佳答案

阅读 Concurrency 上的 Swing 教程部分了解为什么不应该使用 sleep() 方法。

一种解决方案是使用 SwingWorker,然后您可以“发布”组件的颜色,以便它可以在 EDT 上正确更新,您也可以在 worker 中调用 sleep() 方法。

关于java - 在 Swing 中进行实时/动态更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8670338/

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