我需要制作一个 GUI,工人进入一个工作站(面板上的一个位置)并在那里停留一定时间,显示在工人头部的倒计时中(因此,一旦工人移动到该位置,工作站的标签显示 3s -> 2s -> 1s 然后工人离开,标签恢复为“OPEN”)。我在实现这一点时遇到了麻烦,因为我对 Java 的 Timer(s?) 不太了解。我尝试过这样的事情:
Timer timer = new Timer(1000, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e)
{
//change label text/color, decrement countdown
panel.repaint();
Thread.sleep(1000);
}
});
但是我无法从计时器内部达到倒计时的秒数,而且我不确定如何将该值传递给计时器。如果有人可以帮助我,我将不胜感激。