我被鼓励使用 Java Swing 计时器而不是粗略的方法Thread.sleep(2000);
- 但这给我带来了问题。
具体来说,我不确定如何调用将执行计时器的函数。假设我的计时器是 20 分钟,我希望能够这样说:
for(int i = 0; i<10; i++){
call20MinuteTimer();
}
然后该计时器将运行 10 次(即循环 200 分钟)。使用 Thread.sleep() 上面的 wwa 非常简单。我只能说。
这是我的代码现在的样子:
ActionListener a9 = new ActionListener(){
public void actionPerformed(ActionEvent evt){
DateFormat dateFormat = new SimpleDateFormat("HH:mm");
String currentTime = (String) dateFormat.format(new Date());
combo2.append("You completed " + i + ""
+ " pomodoros! At " + currentTime + " \n");
Toolkit.getDefaultToolkit().beep();
}
};
Timer newTimer = new Timer(500, a9);
newTimer.start();
newTimer.setRepeats(false);
如果我将上述所有代码行放入一个函数中(在 main 之外),它只会调用一次。
也许我不清楚发生了什么?我只是迷路了。谢谢