Jython - 使用Swing GUI庫



Jython 的主要特性之一是能夠使用 JDK 中的 Swing GUI 庫。標準 Python 發行版(通常稱為 CPython)附帶了Tkinter GUI 庫。其他 GUI 庫,如PyQtWxPython,也可以與之一起使用,但 Swing 庫提供了一個平臺無關的 GUI 工具包。

與在 Java 中使用 Swing 庫相比,在 Jython 中使用它要容易得多。在 Java 中,必須使用匿名類來建立事件繫結。在 Jython 中,我們可以簡單地傳遞一個函式來實現相同的目的。

基本頂級視窗是透過宣告JFrame 類的物件並將其可見屬性設定為 true 來建立的。為此,需要從 swing 包中匯入 Jframe 類。

from javax.swing import JFrame

JFrame 類有多個建構函式,引數數量不同。我們將使用一個以字串作為引數並將其設定為標題的建構函式。

frame = JFrame(“Hello”)

在將可見屬性設定為 true 之前,設定框架的大小和位置屬性。將以下程式碼儲存為frame.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)

從命令提示符執行上述指令碼。它將顯示以下輸出,顯示一個視窗。

Window

Swing GUI 庫以 Java 中的javax.swing包的形式提供。其主要容器類JFrameJDialog分別派生自 AWT 庫中的 Frame 和 Dialog 類。其他 GUI 控制元件,如JLabel、JButton、JTextField等,都派生自 JComponent 類。

下圖顯示了 Swing 包的類層次結構。

Swing Package Class Hierarchy

下表總結了 Swing 庫中不同的 GUI 控制元件類:

序號 類和描述
1

JLabel

JLabel 物件是一個用於在容器中放置文字的元件。

2

JButton

此類建立一個帶標籤的按鈕。

3

JColorChooser

JColorChooser 提供一組控制元件面板,允許使用者操作和選擇顏色。

4

JCheckBox

JCheckBox 是一個圖形元件,可以處於(true)或(false)狀態。

5

JRadioButton

JRadioButton 類是一個圖形元件,可以處於開(true)或關(false)狀態,在一個組中。

6

JList

JList 元件向用戶呈現一個可滾動的文字專案列表。

7

JComboBox

JComboBox 元件向用戶呈現一個下拉列表。

8

JTextField

JTextField 物件是一個文字元件,允許編輯單行文字。

9

JPasswordField

JPasswordField 物件是一個專門用於密碼輸入的文字元件。

10

JTextArea

JTextArea 物件是一個文字元件,允許編輯多行文字。

11

ImageIcon

ImageIcon 控制元件是 Icon 介面的實現,它從影像繪製圖標。

12

JScrollbar

Scrollbar 控制元件表示一個捲軸元件,以便使用者可以從值的範圍內進行選擇。

13

JOptionPane

JOptionPane 提供一組標準對話方塊,用於提示使用者輸入值或通知使用者某些資訊。

14

JFileChooser

JFileChooser 控制元件表示一個對話方塊視窗,使用者可以在其中選擇檔案。

15

JProgressBar

隨著任務向完成方向發展,進度條顯示任務的完成百分比。

16

JSlider

JSlider 允許使用者透過在有界區間內滑動旋鈕來以圖形方式選擇值。

17

JSpinner

JSpinner 是一個單行輸入欄位,允許使用者從有序序列中選擇數字或物件值。

我們將在後續示例中使用其中一些控制元件。

廣告
© . All rights reserved.