使用幫助用戶提供的代碼Stefan我編輯了自己的代碼來模擬他的,但是我無法讓我的計時器開始。我試圖將實例移出private void,並導致其他錯誤,如嘗試重新定義計時器變量。Java Swing Timer開始問題
private Timer timer;
private void StartStopTimerActionPerformed(java.awt.event.ActionEvent evt) {
timer = new Timer(5000,new ActionListener(){
@Override
public void actionPerformed(ActionEvent evt) {
}
});
StartStopTimer.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (!timer.isRunning()) {
timer.start(); AddOneActionPerformed(evt);
} else {
timer.stop();
}
}
});
}
此代碼對定時器沒有影響。它不會開始計數
正如在我的例子提到的,計時器執行5秒一次之後actionPerformed方法。如果您希望計時器每秒計數一次,則需要將間隔(5000)設置爲1000並調用timer.setRepeats(true)。更新了我的答案。 – Stefan 2014-11-03 11:19:46