Java Reference
In-Depth Information
14.3
Übungsaufgaben
Aufgabe 1
Erstellen Sie eine neue Komponente
JAmpelPanel2
, die Sie von
JPanel
ableiten. Die Kom-
ponente soll einen Konstruktor verwenden, dem die Werte für die Dauer der einzelnen
Phasen übergeben werden. Der Konstruktor soll die Werte in einem Array ablegen.
Neben der überschriebenen Methode
paintComponent
und der Methode
setPhase
, soll
die Komponente selbst auch eine
run
-Methode für Threads bereitstellen.
Aufgabe 2
Erstellen Sie einen Programm-Frame
Zweiampelsteuerung
, der zwei Objekte der Klasse
JAmpelPanel
nebeneinander darstellt (
Abbildung 14.5
). Jede Ampel soll andere Phasen-
zeiten verwenden. Mit einer Schaltfläche Start sollen beide Ampeln gleichzeitig,
beginnend mit der Rotphase, ihre Ampelphasen durchlaufen. Eine Schaltfläche Stop
soll den Ablauf anhalten.
14
Abbildung 14.5
Frame der Zweiampelsteuerung
Aufgabe 3
Erstellen Sie eine neue Komponente
JUhrLabel
, die Sie von
JLabel
ableiten. Die Kompo-
nente soll die aktuelle Uhrzeit in Stunden, Minuten und Sekunden anzeigen und jede
Sekunde die Anzeige aktualisieren. Die aktuelle Uhrzeit als String im Format erhalten
Sie mit:
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
String uhrzeit = sdf.format(System.currentTimeMillis());
Listing 14.16
Erstellt einen String mit der aktuellen Uhrzeit im Format HH:mm:ss