Klasse javax.swing.Timer | 1.2 |
java.lang.Object
|
+--javax.swing.Timer
Deklaration
public class Timer
extends java.lang.Object
implements java.io.Serializable
Beschreibung
Diese Klasse löst in festen Abständen ActionEvents aus. Man kann diese Klasse beispielsweise dazu benutzen, ob Animationen ablaufen zu lassen. Das folgende Beispiel ruft jede Sekunde die actionPerformed auf.
int delay = 1000; //milliseconds
ActionListener taskPerformer = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
//... Führt eine Aufgabe aus
}
};
new Timer(delay, taskPerformer).start();
Bevor der erste Event ausgelöst wird, wird zunächst eine initiale Zeitspanne abgewartet, die über setInitialDelay eingestellt werden kann. Über setRepeats kann eingestellt werden, ob die Events in einer Endlosschleife ausgelöst werden.
Datenelemente im Detail
-
protected EventListenerList listenerList
-
Konstruktoren im Detail
-
public Timer(int delay, ActionListener listener)
-
Erstellt einen Timer, der nach den angegebenen Millisekunden den angegeben ActionListener informiert.
Methoden im Detail
-
public void addActionListener(ActionListener listener)
-
Fügt einen Listener hinzu.
-
public void removeActionListener(ActionListener listener)
-
Entfernt den angegebenen Listener.
-
public ActionListener[] getActionListeners()
![[1.4]](../../images/marg14.gif)
-
Liefert alle registrierten Listener.
-
protected void fireActionPerformed(ActionEvent e)
-
Informiert alle Listener.
-
public EventListener[] getListeners(Class listenerType)
![[1.3]](../../images/marg13.gif)
-
Liefert alle Listener des angegebenen Typs.
-
public static void setLogTimers(boolean flag)
-
Aktiviert das Logging, bei dem eine Nachricht über System.out ausgegeben wird, wenn einen Event ausgelöst wird.
-
public static boolean getLogTimers()
-
Liefert true, wenn das Logging aktiviert ist.
-
public void setDelay(int delay)
-
Setzt die Anzahl der Millisekunden, zwischen denen jeweils ein Event ausgelöst wird.
-
public int getDelay()
-
Liefert die Anzahl der Millisekunden, zwischen denen jeweils ein Event ausgelöst wird.
-
public void setInitialDelay(int initialDelay)
-
Setzt die Millisekunden, bis der erste Event ausgelöst wird.
-
public int getInitialDelay()
-
Liefert die Millisekunden, bis der erste Event ausgelöst wird.
-
public void setRepeats(boolean flag)
-
Wenn auf true gesetzt, werden die Events in einer Schleife kontinuierlich ausgelöst werden.
-
public boolean isRepeats()
-
Liefert true (Standard), wenn die Events in einer Schleife kontinuierlich ausgelöst werden.
-
public void setCoalesce(boolean flag)
-
Setzt den Wert für coalesces. Wenn eine Applikation eine hoge CPU-Last hervorruft, kann es passieren, dass der Timer die Events in einer Warteschlange zwischenpuffert, so dass zwischen den Events nicht mehr die eingestellte Zeit vergeht. Wenn der Wert auf true steht, werden solche Events zusammengefasst.
-
public boolean isCoalesce()
-
Liefert true, wenn mehrere Events zusammengefasst werden sollen.
-
public void start()
-
Startet den Timer.
-
public boolean isRunning()
-
Liefert true, wenn der Timer läuft.
-
public void stop()
-
Stoppt den Timer.
-
public void restart()
-
Startet den Timer neu.
Copyright © 2002 dpunkt.Verlag, Heidelberg. Alle Rechte vorbehalten.