GUI ist definiert als die Schnittstelle mit benutzerfreundlichen Komponenten wie Schaltflächen, Textfeldern usw., um dem Benutzer eine einfache Interaktion mit der Software zu ermöglichen. In einer grafischen Benutzeroberfläche werden die auszuführenden Aktionen durch kleine Grafiken oder Bilder gekennzeichnet. Dabei stehen die Benutzeraktionen im Vordergrund. Der Benutzer kann interagieren, indem er mit der Maus die auszuführende Aktion auswählt, indem er auf eine bestimmte Grafik klickt. Möchte der Nutzer beispielsweise eine Datei ausdrucken, muss er lediglich auf eine kleine Grafik mit der Darstellung eines Druckers klicken. In diesem Thema lernen wir etwas über das Java GUI Framework.
WERBUNG Beliebter Kurs in dieser Kategorie JAVA MASTERY - Spezialisierung | 78 Kursreihe | 15 ProbetestsStarten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
AWT ist eine API zum Erstellen von GUI- oder fensterbasierten Anwendungen.
Es verfügt über verschiedene Komponenten wie Schaltfläche, TextFeld, Kontrollkästchen, Liste.
AWT ruft Betriebssystem-Unterroutinen zum Erstellen der Komponenten wie Textbox, Kontrollkästchen, Schaltfläche auf. Deshalb ist es plattformabhängig.
Einige der Grundkonzepte bezüglich der AWT-Hierarchie sind wie folgt:
Programme für AWT:
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; class AWTCalculator extends Frame implements ActionListener { Label label1,label2,label3; TextField text1,text2,text3; Button button1,button2,button3,button4,button5; public AWTCalculator() { label1 = new Label("Var 1"); label2 = new Label("Var 2"); label3 = new Label("Result"); text1 = new TextField(10); text2 = new TextField(10); text3 = new TextField(10); button1 = new Button("Add"); button2 = new Button("Sub"); button3 = new Button("Multi"); button4 = new Button("Div"); button5 = new Button("Close"); add(label1); add(text1); add(label2); add(text2); add(label3); add(text3); add(button1); add(button2); add(button3); add(button4); add(button5); setSize(200,200); setTitle("AWTCalculator"); setLayout(new FlowLayout()); button1.addActionListener(this); button2.addActionListener(this); button3.addActionListener(this); button4.addActionListener(this); button5.addActionListener(this); } public void actionPerformed(ActionEvent action) { double a1=0,b1=0,c1=0; try { a1 = Double.parseDouble(text1.getText()); } catch (NumberFormatException e) { text1.setText("Invalid input entered"); } try { b1 = Double.parseDouble(text2.getText()); } catch (NumberFormatException e) { text2.setText("Invalid input entered"); } if(action.getSource()==button1) { c1 = a1 + b1; text3.setText(String.valueOf(c1)); } if(action.getSource()==button2) { c1 = a1 - b1; text3.setText(String.valueOf(c1)); } if(action.getSource()==button3) { c1 = a1 * b1; text3.setText(String.valueOf(c1)); } if(action.getSource()==button4) { c1 = a1 / b1; text3.setText(String.valueOf(c1)); } if(action.getSource() == button5) { System.exit(0); } } public static void main(String[] args) { AWTCalculator calC = new AWTCalculator(); calC.setVisible(true); calC.setLocation(300,300); } }
Ausgabe:
Im Folgenden sind die überzeugenden Gründe für die Verwendung von Java Swing aufgeführt:
Code:
import javax.swing.JButton; import javax.swing.JFrame; public class JButtonDemo { JButtonDemo(){ JFrame newFrame=new JFrame(); // Creating Button JButton b=new JButton("Click"); b.setBounds(50,50,90,50); //Adding button onto the frame newFrame.add(b); // Setting Frame size. This is the window size newFrame.setSize(300,200); newFrame.setLayout(null); newFrame.setVisible(true); newFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { new JButtonDemo(); } }
Ausgabe:
Code:
import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; public class JButtonDemo { JButtonDemo(){ JFrame newFrame=new JFrame(); Icon icon = new ImageIcon("edit.png"); // Creating Button JButton b=new JButton(icon); b.setBounds(50,50,90,50); //Adding button onto the frame newFrame.add(b); // Setting Frame size. This is the window size newFrame.setSize(300,200); newFrame.setLayout(null); newFrame.setVisible(true); newFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { new JButtonDemo(); } }
Ausgabe:
Ein Java-Wrapper für die native qt-Bibliothek, der in c/c++ geschrieben ist.
Es ist sehr leistungsstark, weit verbreitet und akzeptiert. Verfügt über viele GUI-Komponenten und eine einfach zu verwendende API.
Von IBM für Eclipse entwickelt, schienen sie damals der Meinung zu sein, dass Swing nicht für Eclipse geeignet sei.
An sich ist es ziemlich niedrig und nutzt die nativen Widgets der Plattform über JNI. Es hat überhaupt nichts mit Swing und AWT zu tun.
SWT ist ein Open-Source-Widget-Toolkit für Java, das einen effizienten, portablen Zugriff auf die Benutzeroberflächenfunktionen der Betriebssysteme bietet, auf denen es implementiert ist.
Es rendert die Benutzeroberfläche mit Java2D und minimiert so die Auswirkungen der (meiner Meinung nach aufgeblähten) Hinterlassenschaften von Swing und AWT.
Der Schwerpunkt scheint auf RIA (Rich Internet Applications) zu liegen, aber es scheint, dass es auch auf Desktop-Anwendungen angewendet werden kann.
Bei JGoodies OTOH geht es um PLAFs und Layouts.
Das neueste Flaggschiff von Java/Oracle. verspricht, der Fakto-Standard bei der Entwicklung umfangreicher Desktop- oder Webanwendungen zu werden.
Das obige ist der detaillierte Inhalt vonJava GUI Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!