erstellt 29.06.99; übersetzt 07.02.11; überarbeitet 27.04.23, 15.04.24; Deutsche Übersetzung Heinrich Gailer


Kapitel 60 Programmieraufgaben

Alle diese Aufgaben können durch sinnvolle Modifizierung des Beispielprogramms aus diesem Kapitel gelöst werden.


Aufgabe 1 — Ratespiel

Wir passen das Wiederholer-Programm an, so dass der Anwender ein geheimes Wort in das obere Feld eingeben muss. Das geheime Wort ist im Programm festkodiert z.B. final String PW = "geheim";

Bei einer richtigen Eingabe gibt das untere Feld "korrekt" aus. Zusätzlich wird die Hintergrundfarbe auf blau und die Vordergrundfarbe auf weiß gesetzt.

Bei einer falschen Eingabe gibt das untere Feld "1. Versuch falsch" usw. aus. Nach drei Fehlversuchen wird das Programm beendet.

Wir werden die equals() Methode der Klasse String brauchen.

Zurück zum Inhaltsverzeichnis.


Aufgabe 2 — Fehlermeldung

Wir modifizieren das Wiederholer-Programm so, dass wenn der Anwender Text in das untere Textfeld eingibt und die Eingabetaste betätigt, der Text durch die Fehlermeldung "Geben Sie Text im oberen Feld ein!" ersetzt wird.

Wir werden die actionPerformed( ActionEvent evt ) Methode anpassen müssen, so dass sie bestimmt welches Textfeld die Aktion erzeugt hat. Das kann durch die Verwendung der evt.getActionCommand() Methode getan werden, die den String ermittelt, den der Anwender gerade eingegeben hat (dabei spielt es keine Rolle in welchem Feld er eingegeben wurde).

Wir verwenden jetzt getText() für die obere Box, um zu sehen, ob der String in diesem Feld der gleiche ist, wie der Befehlsstring in ActionEvent. Wenn ja, kopieren wir den String in die untere Box. Wenn nein, geben wir die Fehlermeldung aus. Wir vergewissern uns, dass wir einen ActionListener für jedes JTextField registrieren.

Zurück zum Inhaltsverzeichnis.


Aufgabe 3 — Echo für beide Felder

Wir modifizieren das Wiederholer-Programm so, dass der Anwender Text sowohl in das obere als auch in das untere Feld eingeben kann. Der Text wird in dem jeweils anderen Feld wiederholt und ersetzt den vorhandenen Text. Um das zu tun, werden wir getActionCommand() wie in der Aufgabe 2 verwenden müssen.

Zurück zum Inhaltsverzeichnis.


Aufgabe 4 — Texttausch

Wir fügen der GUI einen JButton hinzu. Ändern dann das Programm so, dass wenn der Button angeklickt wird, die Strings in den beiden Textfeldern ausgetauscht werden; d.h. das obere Textfeld bekommt den Text des unteren und das untere Textfeld bekommt den Text des oberen. Die actionPerformed() Methode wird den Button auf ein Ereignis abhören und wird, wenn sie eines empfängt, den Text in den beiden Feldern austauschen.

Zurück zum Inhaltsverzeichnis.