Class PressedKeyRepeater
- All Implemented Interfaces:
KeyStrokeListener
Folgender Code-Ausschnitt registriert zwei Beobachter, nämlich einen für die
linke Pfeiltaste und einen für die rechte Pfeiltaste. Die auszuführenden
Aufgaben werden dabei als Lambda-Ausdrücke (() -> {}) notiert.
import java.awt.event.KeyEvent;
PressedKeyRepeater repeater = new PressedKeyRepeater(0.5, 1);
repeater.addListener(KeyEvent.VK_RIGHT, () -> {
System.out.println("right");
});
repeater.addListener(KeyEvent.VK_LEFT,
() -> System.out.println("left initial"),
() -> System.out.println("left"),
() -> System.out.println("left final"));
Wird die rechte Taste gedrückt gehalten, erscheint sofort der Text
right in der Konsole, nach einer Sekunde (1) ein weiteres
right und dann immer nach einer halben Sekunde (0.5)
right.
Wird die linke Taste gedrückt gehalten, erscheint sofort der Text
initial left und in der nächten Zeile left, nach einer
Sekunde ein weiteres left und dann immer nach einer halben Sekunde
left. Beim Loslassen der Taste erscheint final left
- Since:
- 0.9.0
- Author:
- Josef Friedrich
-
Constructor Summary
ConstructorsConstructorDescriptionErzeugt einen Wiederholer mit Standardwerten für die Zeitintervalle.PressedKeyRepeater(double interval, double initialInterval) Erzeugt einen Wiederholer durch Angabe des Zeitintervalls der Wiederholung und der anfänglichen Verzögerung. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(int keyCode, Runnable repeatedTask) Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer und die sich wiederholende Aufgabe angegeben werden.voidaddListener(int keyCode, Runnable repeatedTask, double interval, double initialInterval) Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer, die sich wiederholende Aufgabe, das Zeitintervall der Wiederholung und anfängliche Verzögerung angegeben werden.voidaddListener(int keyCode, Runnable repeatedTask, Runnable finalTask) Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer, die sich wiederholende Aufgabe und die abschließende einmalige Aufgabe angegeben werden.voidaddListener(int keyCode, Runnable initialTask, Runnable repeatedTask, Runnable finalTask) Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer, die anfängliche einmalige Aufgabe, die sich wiederholende Aufgabe und abschließende einmalige Aufgabe angegeben werden.voidstop()Stoppt alle momentan laufenden Ausführungen der sich wiederholenden Aufgabe.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface pi.event.KeyStrokeListener
onKeyUp
-
Constructor Details
-
PressedKeyRepeater
public PressedKeyRepeater(double interval, double initialInterval) Erzeugt einen Wiederholer durch Angabe des Zeitintervalls der Wiederholung und der anfänglichen Verzögerung.- Parameters:
interval- Das Zeitintervall (in Sekunden) nach dem die Aufgabe wiederholt wird.initialInterval- Die Verzögerung (in Sekunden) zwischen dem ersten Tastendruck und der ersten Wiederholung der Aufgabe.
-
PressedKeyRepeater
public PressedKeyRepeater()Erzeugt einen Wiederholer mit Standardwerten für die Zeitintervalle.Der Standardwert für das Zeitintervall der Wiederholung ist
0.03und der Standardwert für die anfängliche zeitliche Verzögerung0.15
-
-
Method Details
-
addListener
public void addListener(int keyCode, Runnable repeatedTask, double interval, double initialInterval) Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer, die sich wiederholende Aufgabe, das Zeitintervall der Wiederholung und anfängliche Verzögerung angegeben werden.- Parameters:
keyCode- Die Nummer der Taste, durch die die Aufgaben gestartet werden. Beispielsweise kann mit dem statischen AttributKeyEvent.VK_Adie Tastennummer der Taste „A“ bestimmt werden.repeatedTask- Die Aufgabe, die nach einem bestimmten Zeitintervall wiederholt wird.interval- Das Zeitintervall (in Sekunden) nach dem die Aufgabe wiederholt wird.initialInterval- Die Verzögerung (in Sekunden) zwischen dem ersten Tastendruck und der ersten Wiederholung der Aufgabe.
-
addListener
Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer und die sich wiederholende Aufgabe angegeben werden.- Parameters:
keyCode- Die Nummer der Taste, durch die die Aufgaben gestartet werden. Beispielsweise kann mit dem statischen AttributKeyEvent.VK_Adie Tastennummer der Taste „A“ bestimmt werden.repeatedTask- Die Aufgabe, die nach einem bestimmten Zeitintervall wiederholt wird.
-
addListener
Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer, die sich wiederholende Aufgabe und die abschließende einmalige Aufgabe angegeben werden.- Parameters:
keyCode- Die Nummer der Taste, durch die die Aufgaben gestartet werden. Beispielsweise kann mit dem statischen AttributKeyEvent.VK_Adie Tastennummer der Taste „A“ bestimmt werden.repeatedTask- Die Aufgabe, die nach einem bestimmten Zeitintervall wiederholt wird.finalTask- Eine einmalige Aufgabe, die beim Loslassen der entsprechenden Taste, ausgeführt wird.
-
addListener
public void addListener(int keyCode, Runnable initialTask, Runnable repeatedTask, Runnable finalTask) Fügt einen Beobachter hinzu, der auf gedrückt gehaltene Tasten reagiert; dabei kann die Tastennummer, die anfängliche einmalige Aufgabe, die sich wiederholende Aufgabe und abschließende einmalige Aufgabe angegeben werden.- Parameters:
keyCode- Die Nummer der Taste, durch die die Aufgaben gestartet werden. Beispielsweise kann mit dem statischen AttributKeyEvent.VK_Adie Tastennummer der Taste „A“ bestimmt werden.initialTask- Eine einmalige Aufgabe, die unmittelbar ausgeführt wird, wenn die entsprechende Taste gedrückt wird.repeatedTask- Die Aufgabe, die nach einem bestimmten Zeitintervall wiederholt wird.finalTask- Eine einmalige Aufgabe, die beim Loslassen der entsprechenden Taste, ausgeführt wird.
-
stop
public void stop()Stoppt alle momentan laufenden Ausführungen der sich wiederholenden Aufgabe.Die Aufgaben werden dann erst wieder ausgeführt, wenn die entsprechende Taste erneut gedrückt wird.
-