我有一個java swing gui程序,當我點擊一個切換按鈕時,一個計時器開始,但我想能夠點擊相同的按鈕,計時器停止,現在它不會讓我再次點擊它。 這是我的定時器類爲什麼我的按鈕不可點擊? (爪哇)
public void runningClock(){
isPaused = false;
while(!isPaused){
incrementTime();
System.out.println("Timer Current Time " + getTime());
time.setText(""+ getTime());
try{Thread.sleep(1000);} catch(Exception e){}
}
}
public void pausedClock(){
isPaused=true;
System.out.println("Timer Current Time " + getTime());
time.setText(""+ getTime());
try{Thread.sleep(1000);} catch(Exception e){}
}
,這是我的主類
private void btnRunActionPerformed(java.awt.event.ActionEvent evt) {
if(btnRun.getText().equals("Run")){
System.out.println("Run Button Clicked");
btnRun.setText("Pause");
test.runningClock();
}
else if(btnRun.getText().equals("Pause")){
System.out.println("Pause Button Clicked");
btnRun.setText("Run");
test.pausedClock();
}
}
就拿問題的原因一看[併發在Swing(http://docs.oracle.com/javase/tutorial/uiswing/concurrency/)和[如何使用Swing定時器( http://docs.oracle.com/javase/tutorial/uiswing/misc/timer.html)爲了解決這個問題(如前所述) – MadProgrammer 2014-09-01 23:36:20