带有swing组件的java定时器



我需要制作一个计时器,将引用传递给组件

    Timer timertest = new Timer(12000, new Timer());
.............
{
    JButton button = new JButton("test");
    //How can I pass button reference in the Timer()?
    //timertest.start(button);
    timertest.start();
}
.............
class Timer implements ActionListener
{
    public void actionPerformed(ActionEvent event)
    {
        System.out.println("button: "+button.getText());
        timertest.stop();
    }
}

如何在Timer()中传递按钮引用?

我建议您编写自己的Timer(class MyTimer extends Timer)子类,然后您可以在构造函数或自己的方法中传递对按钮的引用。

例如:

class MyTimer extends Timer{
  public void start(JButton button){
     // use the button reference
    super.start(); 
}

最新更新