Aus diesem Grund müssen wir einige Alternativen finden, die es uns ermöglichen, das Problem zu lösen, ohne den Entwicklungsprozess des Programms oder der Anwendung komplexer zu gestalten. Dabei können wir das Panel dann als Subcontainer in Java verwenden und die einzelnen Bereiche unterteilen innerhalb unserer Oberfläche ausschneiden und so das gewünschte grafische Ergebnis erzielen.
Panel als Subcontainer verwenden
Dazu müssen wir ein Fenster in Felder unterteilen, auf diese Weise können wir ein Feld als Gitter organisieren und ein anderes ohne Unterteilungen lassen, so wie wir ein leeres Blatt durch Zeichnen von Linien darauf unterteilen würden.
Um dies zu erreichen, müssen wir die JPanel- Klasse der Java-Swing-Bibliothek verwenden und mit der add () -Methode die verschiedenen Elemente hinzufügen.
Praktisches Beispiel
Wir werden ein einfaches Beispiel erstellen, wir werden zwei Panels haben, das erste wird ein 4×3-Gitter enthalten und das nächste wird einen Text enthalten und wir werden auch unser erstes Panel enthalten, mit dem wir ein anderes Layout haben können.
Sehen wir uns den folgenden Code an, in dem wir das Layout eines Mikrowellenofens erstellen, den Platz für das Essenstablett haben und auf der rechten Seite die Tasten, mit denen wir es bedienen:
import java.awt. *; import javax.swing. *; public class Microwaves erweitert JFrame { öffentliche Mikrowellen () { JPanel p1 = neues JPanel (); p1.setLayout (neues GridLayout (4, 3)); für (int i = 1; i <= 9; i ++) { p1.add (neuer JButton ("" + i)); } p1.add (neuer JButton ("" + 0)); p1.add (neuer JButton ("Start")); p1.add (neuer JButton ("Stop")); JPanel p2 = neues JPanel (neues BorderLayout ()); p2.add (neues JTextField ("Die Uhrzeit wird hier angezeigt"), BorderLayout.NORTH); p2.add (p1, BorderLayout.CENTER); add (p2, BorderLayout.EAST); add (neuer JButton ("Here goes the food tray"), BorderLayout.CENTER); } public static void main (String [] args) { Mikrowellen-Frame = neue Mikrowellen (); frame.setTitle ("Der Mikrowellenherd"); frame.setSize (400, 250); frame.setLocationRelativeTo (null); frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); frame.setVisible (true); } }
Wir können sehen, wie p1 unser erstes Panel sein wird, das das oben bereits erwähnte Gitter enthält, um die Schaltflächen zu erstellen, die wir für einen Zyklus erstellen, und mit der add () -Methode fügen wir sie dem Container hinzu.
Dann erstellen wir unser zweites Container-Panel, das wir p2 nennen, das zunächst einen Text enthält, und fügen dann das Panel p1 hinzu, schließlich in der main () -Methode, die wir unsere Schnittstelle aufrufen. Wenn alles richtig gelaufen ist, können wir folgendes Ergebnis sehen:
Damit haben wir einen Mikrowellenherd geschaffen. Wenn wir wollen, dass er funktioniert, müssen wir natürlich die Tasten programmieren, aber das ist eine andere Geschichte. Wir haben festgestellt, wie wir den Inhalt auf einfache und praktische Weise organisieren können. Auf dieser Basis können wir weiter experimentieren, um immer komplexere Abteilungen zu erreichen, oder uns an unsere Anforderungen anpassen, wenn wir dies wünschen.
Am Ende dieses Tutorials haben wir gelernt, wie wir mit der Java JPanel- Komponente Subcontainer generieren und so unsere Benutzeroberflächen organisieren können.