Jython - Verwenden der Swing-GUI-Bibliothek

Eine der Hauptfunktionen von Jython ist die Fähigkeit, die Swing-GUI-Bibliothek in JDK zu verwenden. Die Standard-Python-Distribution (oft als CPython bezeichnet) hat dieTkinter GUI librarymit ihm verschickt. Andere GUI-Bibliotheken mögenPyQt und WxPython sind auch zur Verwendung verfügbar, aber die Swing-Bibliothek bietet ein plattformunabhängiges GUI-Toolkit.

Die Verwendung der Swing-Bibliothek in Jython ist viel einfacher als in Java. In Java müssen die anonymen Klassen verwendet werden, um eine Ereignisbindung zu erstellen. In Jython können wir einfach eine Funktion für denselben Zweck übergeben.

Das grundlegende Fenster der obersten Ebene wird durch Deklarieren eines Objekts von erstellt JFrame classund setzen Sie die sichtbare Eigenschaft auf true. Dazu muss die Jframe-Klasse aus dem Swing-Paket importiert werden.

from javax.swing import JFrame

Die JFrame-Klasse verfügt über mehrere Konstruktoren mit unterschiedlicher Anzahl von Argumenten. Wir werden diejenige verwenden, die eine Zeichenfolge als Argument verwendet und sie als Titel festlegt.

frame = JFrame(“Hello”)

Legen Sie die Größen- und Positionseigenschaften des Rahmens fest, bevor Sie die sichtbare Eigenschaft auf true setzen. Speichern Sie den folgenden Code alsframe.py.

from javax.swing import JFrame

frame = JFrame("Hello")
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
frame.setLocation(100,100)
frame.setSize(300,200)
frame.setVisible(True)

Führen Sie das obige Skript an der Eingabeaufforderung aus. Die folgende Ausgabe zeigt ein Fenster.

Die Swing-GUI-Bibliothek wird in Form von bereitgestellt javax.swingPaket in Java. Seine Hauptcontainerklassen,JFrame und JDialogwerden jeweils von Frame- und Dialog-Klassen abgeleitet, die sich in der AWT-Bibliothek befinden. Andere GUI-Steuerelemente wieJLabel, JButton, JTextField, usw. werden von der JComponent-Klasse abgeleitet.

Die folgende Abbildung zeigt die Hierarchie der Swing-Paketklassen.

In der folgenden Tabelle sind verschiedene GUI-Steuerungsklassen in einer Swing-Bibliothek zusammengefasst.

Sr.Nr. Klasse & Beschreibung
1

JLabel

Ein JLabel-Objekt ist eine Komponente zum Platzieren von Text in einem Container.

2

JButton

Diese Klasse erstellt eine beschriftete Schaltfläche.

3

JColorChooser

Ein JColorChooser bietet einen Bereich mit Steuerelementen, mit denen ein Benutzer eine Farbe bearbeiten und auswählen kann.

4

JCheckBox

Eine JCheckBox ist eine grafische Komponente, die sich entweder in einer befinden kann on (wahr oder off (falscher) Zustand.

5

JRadioButton

Die JRadioButton-Klasse ist eine grafische Komponente, die sich entweder im Status "Ein" (wahr) oder "Aus" (falsch) befinden kann. in einer Gruppe.

6

JList

Eine JList-Komponente zeigt dem Benutzer eine Liste mit Textelementen an.

7

JComboBox

Eine JComboBox-Komponente zeigt dem Benutzer eine Dropdown-Liste mit Elementen an

8

JTextField

Ein JTextField-Objekt ist eine Textkomponente, mit der eine einzelne Textzeile bearbeitet werden kann.

9

JPasswordField

Ein JPasswordField-Objekt ist eine Textkomponente, die auf die Kennworteingabe spezialisiert ist.

10

JTextArea

Ein JTextArea-Objekt ist eine Textkomponente, mit der mehrere Textzeilen bearbeitet werden können.

11

ImageIcon

Ein ImageIcon-Steuerelement ist eine Implementierung der Symbolschnittstelle, mit der Symbole aus Bildern gezeichnet werden

12

JScrollbar

Ein Bildlaufleistensteuerelement stellt eine Bildlaufleistenkomponente dar, damit der Benutzer aus einem Wertebereich auswählen kann.

13

JOptionPane

JOptionPane bietet eine Reihe von Standarddialogfeldern, in denen Benutzer zur Eingabe eines Werts aufgefordert oder über etwas informiert werden.

14

JFileChooser

Ein JFileChooser-Steuerelement stellt ein Dialogfenster dar, in dem der Benutzer eine Datei auswählen kann.

15

JProgressBar

Während die Aufgabe abgeschlossen wird, zeigt der Fortschrittsbalken den Fertigstellungsgrad der Aufgabe an.

16

JSlider

Mit einem JSlider kann der Benutzer einen Wert grafisch auswählen, indem er einen Knopf innerhalb eines begrenzten Intervalls bewegt.

17

JSpinner

Ein JSpinner ist ein einzeiliges Eingabefeld, mit dem der Benutzer eine Zahl oder einen Objektwert aus einer geordneten Sequenz auswählen kann.

Wir würden einige dieser Steuerelemente in nachfolgenden Beispielen verwenden.