我正在尝试更改按钮的背景颜色,请稍等一下,然后再次更改。但是,我尝试添加一个将执行多次的循环,并且在两者之间使用Thread.sleep来查看更改。但是背景颜色没有改变。
我尝试在每次更改System.out.println()时都放置一个,并且确实在控制台中每指定的时间显示一条消息。
for (int i = 0; i < 5; i++) {
Random rand = new Random();
int temp = rand.nextInt(6);
System.out.println(temp);
arr []是和int数组组成的数组,每个包含需要更改的按钮。
for (int element : arr[temp])
buttons[element].setBackground(Color.black);
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
for (int element : arr[temp])
buttons[element].setBackground(Color.white);
}
我也尝试使用计时器:
Timer timer = new Timer(500, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (!stop) {
for (int element : arr[temp])
buttons[element].setBackground(Color.black);
} else {
((Timer) e.getSource()).stop();
}
}
,但仍然无法正常工作。布尔停止也没有被识别。