swing.Timer不会停止

时间:2015-12-29 17:46:53

标签: java swing timer

我在所有课程中使用swing.Timer,并且在所有计时器中都遇到了同样的问题  问题是:我的所有计时器都是第一次运行良好,但是第二次所有计时器都没有停止

这是我所有计时器的代码

   Timer timer1;
   S= 0 ;
   ActionListener taskPerformer2 ; = new ActionListener() { 
    public void actionPerformed(ActionEvent evt) {                  
        if (  S == 10 ){            
           // My work   
           timer1.stop(); 
        }       
        S++;
        System.out.println(S + "A");
    }; 
 };
 timer1 = new Timer(20, taskPerformer2);
 timer1.start();

1 个答案:

答案 0 :(得分:1)

直接从事件中检索当前计时器。

public void actionPerformed(ActionEvent evt) {                  
  if (  S == 10 ){            
       // My work   
       ((Timer)evt.getSource()).stop(); // <-- this was changed
    }       
    S++;
    System.out.println(S + "A");
  };