Das JPanel
ist ein Element der Swing-Bibliothek. Es handelt sich dabei um einen Container. Diese dienen dazu, die eigentlichen UI-Bedienelemente zu strukturieren und gruppieren.
JPanel
Um die Buttons im JFrame
zu positionieren, kannst du einen JPanel
verwenden. Auch den deklarierst du unter dem Kopf der Klasse mit private JPanel panel;
. Den Konstruktor ergänzt du dann folgendermaßen:
Besuche die App, um alle Inhalte zu sehen!
Damit erzeugst du dir einen neuen JPanel
und setzt seine Größe fest. Außerdem fügst du damit ein Grid-Layout hinzu. Das ist sehr hilfreich, um die verschiedenen Buttons zu positionieren.
Die beiden Vieren stehen für die Anzahl an Reihen und Spalten. Die beiden Zahlen danach stehen für den horizontalen beziehungsweise vertikalen Abstand zwischen den Elementen.
Jetzt muss der panel
noch in dein frame
hinzugefügt werden, damit du ihn auch sehen kannt. Schreibe dafür am Ende des Konstruktors frame.add(panel);
.
Setze gerne die Farbe des panel
mit dem Befehl panel.setBackground(Color.gray);
auf Grau, damit du weißt, wo genau er sich befindet. Das machst du am besten wieder unter der Anweisung setBounds
.
In diesem grauen Bereich werden nachher deine numberButtons
und die Buttons für die Operationen sein. Du kannst jetzt wieder den Befehl, mit dem du die Hintergrundfarbe gesetzt hast, löschen.
Jetzt geht es darum, das GridLayout
mit den Buttons zu befüllen. Da hier ein 4x4-Layout verwendet wird, besteht das Layout aus vier Zeilen und vier Spalten. In die erste Spalte können also vier Buttons eingefügt werden, genau wie in der zweiten, dritten und vierten. Damit du den Überblick behältst, welcher Button in welcher Zeile liegt, arbeite gerne mit Kommntaren (solltest du generell!). Wenn du dir noch einmal den fertigen Taschenrechner anschaust, siehst du, dass in der obersten Reihe die Zahlen 7, 8 und 9 und der +-Button liegen. Also schreibst du panel.addd();
und in den Klammern den jeweiligen Button, der hinzugefügt werden soll. Bei 7 wäre das also numberButtons[7]
. So gehst du Reihe für Reihe durch:
Besuche die App, um alle Inhalte zu sehen!
Da die Operation-Buttons erst verwendet werden sollen, wenn bereits eine Zahl eingetippt wurde, werden sie zu Beginn erst einmal auf false
gesetzt. Das kannst du direkt unter dem Einfügen der Buttons in den frame
machen:
Besuche die App, um alle Inhalte zu sehen!
Dein Taschenrechner wurde nun um alle weiteren Buttons ergänzt: