blob: 5f2ab8444209608c9177483744005f5a4caedea8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
/**
* Zugriff auf die Ereignisse einschließlich Taktgeber.
*
* @author Albert Wiedemann
* @version 1.0
*/
public class Ereignisbehandlung
{
/**
* Der Konstruktor meldet den Taktgeber
* und die Eventlistener bei der Zeichenfläche an.
*/
Ereignisbehandlung ()
{
Zeichenfenster.AktionsEmpfängerEintragen(new Zeichenfenster.AktionsEmpfaenger()
{
public void Ausführen ()
{
TaktImpulsAusführen();
}
public void Taste (char taste)
{
TasteGedrückt(taste);
}
public void SonderTaste (int taste)
{
SonderTasteGedrückt(taste);
}
public void Geklickt (int x, int y, int anzahl)
{
MausGeklickt(x, y, anzahl);
}
});
}
/**
* Die eigentliche Aktionsmethode des Zeitgebers.
* <br>Muss bei Bedarf von einer Unterklasse überschrieben werden.
*/
void TaktImpulsAusführen ()
{
System.out.println ("Tick");
}
/**
* Zeitgeber starten.
*/
void Starten ()
{
Zeichenfenster.TaktgeberStarten();
}
/**
* Zeitgeber anhalten.
*/
void Anhalten ()
{
Zeichenfenster.TaktgeberStoppen();
}
/**
* Ablaufgeschwindigkeit des Zeitgebers einstellen.
*
* @param dauer: Angabe in Millisekunden
*/
void TaktdauerSetzen (int dauer)
{
Zeichenfenster.TaktdauerSetzen(dauer);
}
/**
* Die eigentliche Aktionsmethode für gedrückte Tasten.
* <br>Muss bei Bedarf von einer Unterklasse überschrieben werden.
* @param taste die gedrückte Taste
*/
void TasteGedrückt (char taste)
{
System. out. println ("Taste: " + taste);
}
/**
* Die eigentliche Aktionsmethode für gedrückte Sondertasten.
* <br>Muss bei Bedarf von einer Unterklasse überschrieben werden.
* @param taste KeyCode der gedrückten Taste
*/
void SonderTasteGedrückt (int taste)
{
System. out. println ("Sondertaste: " + taste);
}
/**
* Die eigentliche Aktionsmethode für einen Mausklick.
* <br>Muss bei Bedarf von einer Unterklasse überschrieben werden.
* @param x x-Position des Mausklicks
* @param y y-Position des Mausklicks
* @param anzahl Anzahl der aufeinanderfolgenden Mausklicks
*/
void MausGeklickt (int x, int y, int anzahl)
{
System. out. println ("Maus: (" + x + "|" + y + "), " + anzahl + " mal");
}
}
|