1. Definition
Der vollständige Name von GUI ist Graphical User Interface, also eine grafische Benutzeroberfläche. JDK bietet zwei Pakete, AWT und Swing , für den Entwurf und die Entwicklung von GUI-Programmen.
1.java .awt abstract Window Toolkit (Abstract Window Toolkit), eine frühe Version von Java, verfügt über begrenzte Arten von Komponenten und muss lokale Systemmethoden aufrufen, um Funktionen zu implementieren. Es ist schwergewichtig und etwas plattformübergreifend -abhängig.
2.javax.SWing ist ein grafisches Benutzeroberflächensystem, das von Sun Company auf der Basis von AWT entwickelt wurde. Es bietet mehr Komponenten und ist vollständig in Java implementiert, was die Portabilität verbessert und eine geringe Größe aufweist.
SWing entspricht einer aktualisierten Version von AWT, die das Problem des plattformübergreifenden Betriebs löst. Dies bedeutet jedoch nicht, dass AWT vollständig eliminiert wurde, und es ist immer noch wichtig seine Leistung verstehen.
2. AWT-Klassenhierarchie
Container: ist ein Container, Es handelt sich um eine spezielle Komponente, zu der über die Add-Methode weitere Komponenten hinzugefügt werden können.
Einfaches Codebeispiel:
import java.awt.Frame;public class Test19 {public static void main(String[] args) { demo(); }static void demo() { Frame f = new Frame("这是我做的第一个窗口"); f.setSize(400, 400); f.setLocation(40, 60);// 左上角的坐标System.out.println("運行成功");// 验证程序是否被执行了 } }
Wenn Sie den obigen Code ausführen, ist das Programm den Konsolenergebnissen nach nicht aufgehängt und wurde ausgeführt. Das gewünschte Dialogfeld erscheint einfach nicht.
Dem obigen Programm fehlt ein Codeabschnitt: f.setVisible(true);
import java.awt.Frame;public class Test19 {public static void main(String[] args) { demo(); }static void demo() { Frame f = new Frame("这是我做的第一个窗口"); f.setSize(400, 400); f.setLocation(40, 60);// 左上角的坐标 f.setVisible(true);//使得窗口可见 System.out.println("運行成功");// 验证程序是否被执行了 } }
Ausführungsergebnisse: (Es ist erwähnenswert, dass durch Klicken auf
Im Folgenden wird der Vorgang des Hinzufügens einer Schaltfläche veranschaulicht: Ausführungsergebnisse : (Beachten Sie, dass eine Schaltfläche standardmäßig voll ist, wenn Größe und Position nicht festgelegt sind. Rand)import java.awt.Button;import java.awt.Frame;public class Test19 {public static void main(String[] args) { demo(); }static void demo() { Frame f = new Frame("这是我做的第一个窗口"); f.setSize(400, 400); f.setLocation(40, 60);// 左上角的坐标f.setVisible(true);// 使得窗口可见Button b = new Button("按钮");// 需要导包f.add(b);// 添加该按钮System.out.println("運行成功");// 验证程序是否被执行了 } }
Zusammenfassung:
Viele GUI-Komponenten können entsprechend ihrer Funktionen und Container in zwei Hauptkategorien unterteilt werden. Basiskomponenten: Schaltflächen, Textfelder usw. können keine anderen Komponenten aufnehmen.
Container: Kann andere Komponenten wie Fenster, Dialogfelder usw. aufnehmen. Alle Container sind direkte oder indirekte Unterklassen von java.awt.Container (der Frame oben ist ein Container)
Anhang, Gedanken:
Das obige Programm endet, wenn es ausgeführt wird zu System.out.println("Erfolgreich ausführen"); Tatsächlich endet die Hauptfunktion zu diesem Zeitpunkt. Aber das Fenster ist immer noch da. Wir können es sogar schaffen. Dann müssen andere Vordergrund-Threads ausgeführt werden. Es ist verständlich, dass beim Erstellen von Frame ein anderer Thread gestartet wird.
Das obige ist der detaillierte Inhalt vonGUI-Programmierung in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!