Ticker.java
上传用户:jhzhutan
上传日期:2021-03-28
资源大小:374k
文件大小:1k
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.io.PrintStream;
- //Download:http://www.codefans.net
- public class Ticker
- implements Runnable
- {
- ActionListener al;
- private boolean isTicking;
- Thread t;
- int delay;
- public Ticker(int i, ActionListener actionlistener)
- {
- al = actionlistener;
- delay = i;
- t = new Thread(this);
- t.start();
- isTicking = false;
- }
- public Ticker(int i)
- {
- delay = i;
- t = new Thread(this);
- t.start();
- isTicking = false;
- }
- public void addActionListener(ActionListener actionlistener)
- {
- if(al == null)
- al = actionlistener;
- else
- System.out.println("WARNING: ActionListener already added to Ticker.");
- }
- public boolean isRunning()
- {
- return isTicking;
- }
- public void start()
- {
- isTicking = true;
- }
- public void stop()
- {
- isTicking = false;
- }
- public void setDelay(int i)
- {
- delay = i;
- }
- public int getDelay()
- {
- return delay;
- }
- private void fireActionPerformed()
- {
- if(al == null || !isTicking)
- {
- return;
- } else
- {
- ActionEvent actionevent = new ActionEvent(this, 0, null);
- al.actionPerformed(actionevent);
- return;
- }
- }
- public void run()
- {
- do
- {
- fireActionPerformed();
- try
- {
- Thread.sleep(delay);
- }
- catch(InterruptedException interruptedexception)
- {
- System.out.println("WARNING: Ticker thread interrupted.");
- }
- } while(true);
- }
- }