Übung zu Rasterlayout
(EN google-translate)
(PL google-translate)
Aufgabe 1
- Schreiben Sie die C++ Klasse Zylinder aus Kapitel 2.3 in Java um.
- Ergänzen Sie eine clone() -Methode.
- Schreiben Sie eine main-Methode, um die Klasse zu testen.
|
Aufgabe 2
- Schreiben Sie eine ähnliche Java-Klasse wie Zylinder, die aber einen Würfel repräsentiert.
- Entwickeln Sie nun ein Interface "Koerper" mit der Methode berechneVolumen(), die von beiden Klassen (Zylinder und Würfel) implementiert wird.
- Schreiben Sie nun eine Klasse "Hauptklasse" mit einer main-Methode, in der ein ArrayList-Objekt zur Aufnahme von Objekten, die die Schnittstelle "Koerper" implementieren bereit gestellt wird.
- Speichern Sie in der ArrayList gemischt einige Objekte sowohl vom Typ Zylinder, als auch vom Typ Wuerfel.
- Gehen Sie die in ArrayList gespeicherten Objekte in einer Schleife durch und bestimmen Sie das Gesamtvolumen aller in ihr gespeicherter Objekte.
|
Nehmen Sie für die folgenden Aufgaben den Entwicklungsstand rl007_bauteil_chooser.zip zur Grundlage (s. vorangegangenes Unterkapitel).
Aufgabe 3
- Ergänzen Sie ein neues Bauteil "Widerstand2", bei dem der Widerstand um ein Rastermaß kürzer ist.
- Implementieren Sie in passender Weise ein Bauteil "Kondensator".
|
Aufgabe 4
Erweitern Sie die Interaktionsmöglichkeiten über die Tastatur:
- Über die Entfernen-Taste soll das zuletzt auf das Raster gebrachte Bauteil wieder gelöscht werden können.
|
- Über die Tab-Taste soll es möglich sein ein anderes als das letzte Bauteil in der ArrayList bauteile zu fokussieren und dieses zu löschen.
- Mit der Tab-Taste geht man dabei durch die ArrayList bauteile durch.
- Zeigen Sie zunächst in der Konsole an, welches Bauteil gerade aktiv ist.
- Implementieren Sie dann Highlighting des aktuell fokussierten Bauteils. Hierzu muss bei Bauteile die grundsätzliche Möglichkeit implementiert wirden, die aktuelle Farbe der Umrisslienien zu ändern.
|
Aufgabe 5
Aufbauend auf Aufgabe 3 soll nun ermöglicht werden die Beschriftung des aktuell fokussierten Bauteils zu ändern, bzw. überhaupt zu setzen.
- Bei Betätigen der Einfügen-Taste soll temporär an der Stelle, an der sich das fokussierte Bauteil befindet ein JTextField-Objekt entstehen, in das die Beschriftung eingegeben werden kann.
- Ein O.K.-Button darunter soll die Eingabe abschliessen.
|
Erzeugen Sie die beiden Elemente JTextField und JButton dazu genau einmal, aber setzen
Sie diese unsichtbar.
Über setBounds(..) und setVisible(..) lassen sie sich dann positionieren und sichtbar machen.