0

我正在为期末考试复习,这是一个练习题,要求我让一个形状可见半秒,然后不可见半秒。我正在考虑使用计时器来进行这种闪烁行为。

Timer count = new Timer(500, someAction)

但是这种定时器需要一个 ActionListener 和一个 ActionPerformed 才能启动这个定时器。

无论如何我可以在没有任何动作的情况下启动计时器吗?

4

1 回答 1

4

我仍然认为Timer解决方案是完美的

Timer timer = new Timer( 500, new ActionListener(){
  @Override
  public void actionPerformed( ActionEvent e ){
    //toggle visible flag of the shape
    //trigger a repaint
  }
} );
timer.setRepeats( true );
timer.start();

请注意,您可以安全地调整形状的可见标志(将在绘制期间使用),因为Timer它将ActionListener在 EDT 上调用。的主要优点之一javax.swing.Timer,非常适合与 Swing 组件结合使用:-)

于 2013-04-25T08:12:52.573 回答