博为峰小博老师:
利用Timer组件可以在一段时间内依次做出程序员指定的操作,这在动画的展示上非常有用。如果有用过如ACDsee类的看图软件,就可以发现这类软件都会提供一种功能,那就是自动换图功能,而且也可以设置换图时间间隔的长短。在Java中,Swing的Timer组件就可以实现此功能,而且非常容易。下面先来观察Timer的构造器:Timer(int delay,ActionListener listener)用于创建一个每delay毫秒将通知其事件监听器的Timer。
利用Timer组件会在根据所给予的delay时间内周期性地触发ActionEvent事件,如果要处理这个事件,必须实现ActionListener接口所定义的actionPerformed()方法。要开始激活Timer组件可以使用start()方法,要停止Timer组件可以使用stop()方法,要从新激活Timer组件可以使用restart()方法,若让Timer组件只触发一次ActionEvent事件,可利用setRepeats(false)方法,将参数设为false,若要设置delay时间则可利用setDelay()方法。事实上,使用Timer组件,就是表示在程序后台是利用Threads在运行Timer的工作,因此当然也可以利用Thread的功能来自行制造出这样的效果。