在循环中更改GUI组件?

时间:2014-04-21 02:07:21

标签: java

我创建了一个老虎机程序,并在单击旋转按钮时尝试更改3个不同文本框的颜色。

我有一个颜色对象数组,所以每当我想要改变颜色时,我只需使用我的Random对象来做x = rand.nextInt(5)然后是text1。 setBackground(colors [x])和其他类似的东西。

我尝试在方法中使用循环来每次获得不同的随机数,然后每次更改背景,使用不同的随机数,因此在我的颜色数组中给我不同的颜色。

我尝试在循环中使用Thread.sleep,因此颜色变化很明显,并且每次打印出随机的int以确保它正常工作。是的。但由于某些原因,它不希望在循环结束之前更改GUI上的任何内容。因此,如果它运行10次,它只会改变颜色一次 - 最后。

这是为什么?我尝试分裂成不同的线程,在主线程处于休眠状态时将颜色更改为另一个线程,但它仍然没有解决问题。

感谢任何输入。谢谢!

0 个答案:

没有答案