Java Reference
In-Depth Information
Mit der folgenden Anweisung rufen Sie den Dialog auf und erhalten in der Variablen
nf
die gewählte Schrift zurück, die Sie dann zum Zeichnen von Text verwenden können.
Font nf = JMyFontChooser.showDialog(this, f);
Sie finden eine Musterlösung zu der Aufgabe auf der DVD im Ordner
Arbeitsum-
gebung\Java\Programme\JavaUebung13
unter dem Namen
Textzeichner2
.
Aufgabe 5
Erweitern Sie das Programm
Textzeichner1
zur Version
Textzeichner3
. In dieser Version
sollen die Ausgaben von der
paintComponent
-Methode einer von
JPanel
abgeleiteten
Komponente mit dem Namen
JMyTextPanel
gezeichnet werden. Erstellen Sie in einem
ersten Schritt eine Klasse
Textausgabe
, die die zu zeichnenden Textzeilen speichern
kann. Leiten Sie in einem zweiten Schritt die Komponente
JMyTextPanel
ab, und stellen
Sie ihr eine
ArrayList
zum Speichern der Textausgaben zur Verfügung. Die
ArrayList
soll die Position als Koordinaten, den Text als
String
und die Farbe als Objekt der Klasse
Color
speichern. In einem dritten Schritt erstellen Sie dann die Anwendung
Textzeichner3
, die Ihre Komponente nutzt. Sie finden eine Musterlösung zu der Auf-
gabe auf der DVD im Ordner
Arbeitsumgebung\Java\Programme\JavaUebung13
unter
dem Namen
Textzeichner3
. Zusätzlich finden Sie dort auch unter dem Namen
Textzeichner4
eine Version, die alle Textzeilen beim Beenden des Programms speichert
und beim Programmstart wieder aus der Datei einliest. Es muss nur die
ArrayList
gespeichert werden. Deshalb reicht ein einziger Schreib- bzw. Lesevorgang.
13
13.6
Ausblick
Das Zeichnen erlaubt Ihnen, individuelle Veränderungen an Standardkomponenten
vorzunehmen. Sie können aber auch dem Anwender die Möglichkeit eröffnen, sich in
Ihren Programmen grafisch zu betätigen. Das Rüstzeug hierfür hat Ihnen das dieses
Kapitel zur Verfügung gestellt.
Das kommende Kapitel wird auch auf grafische Elemente setzen. Es wird aber darum
gehen, ihnen Dynamik zu verleihen. Sie sollen entweder ihr Aussehen quasi selbsttätig
verändern oder einfach ihre Position verändern und damit Bewegungen ausführen.
Dieses Vorhaben wird aber nur zufriedenstellend gelingen, wenn Sie Ihren Program-
men die Möglichkeit mitgeben, mehrere Dinge quasi gleichzeitig zu erledigen. Sie wer-
den etwas über Multitasking und Multithreading erfahren und Letzteres zur
Realisierung von Animationen einsetzen. Die letzte Übungsaufgabe wird Sie dazu ani-
mieren, ein kleines Geschicklichkeitsspiel zu realisieren.