Jython 简明教程

Jython - Using the Swing GUI library

Jython 的主要功能之一是它能够在 JDK 中使用 Swing GUI 库。标准 Python 发行版(通常称为 CPython)随附 $\{\s9\}$。其他 GUI 库,如 $\{\s10\}$ 和 $\{\s11\}$,也可以与它一起使用,但 Swing 库提供了与平台无关的 GUI 工具包。

在 Jython 中使用 Swing 库比在 Java 中使用它要容易得多。在 Java 中,必须使用匿名类来创建事件绑定。在 Jython 中,我们可以简单地为相同目的传递一个函数。

通过声明 $\{\s12\}$ 的一个对象并将其可见属性设置为 true 来创建基本顶级窗口。为此,需要从 swing 包中导入 Jframe 类。

from javax.swing import JFrame

JFrame 类具有多个具有不同数量参数的构造器。我们将使用其中一个,它将一个字符串作为参数并将其设置为标题。

frame = JFrame(“Hello”)

在将其可见属性设置为 true 之前,设置帧的大小和位置属性。将以下代码存储为 $\{\s13\}$。

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 类。 JLabel, JButton, JTextField, 等其他 GUI 控件派生自 JComponent 类。

以下插图显示了 Swing 包类层次结构。

swing package class hierarchy

下表总结了 Swing 库中的不同 GUI 控件类−

Sr.No.

Class & Description

1

JLabel JLabel 对象是一个用于在容器中放置文本的组件。

2

JButton 此类创建有标签的按钮。

3

JColorChooser JColorChooser 提供一个控件面板,旨在允许用户操作和选择颜色。

4

JCheckBox JCheckBox 是一个图形组件,可以处于 on (真)或 off (假)状态。

5

JRadioButton JRadioButton 类是一个图形组件,它可以在一组中处于打开(真)或关闭(假)状态。

6

JList JList 组件向用户显示一个可滚动的文本项目列表。

7

JComboBox JComboBox 组件向用户显示一个下拉项目列表

8

JTextField JTextField 对象是一个文本组件,允许编辑单行文本。

9

JPasswordField JPasswordField 对象是一个专门用于密码输入的文本组件。

10

JTextArea JTextArea 对象是一个文本组件,允许编辑多行文本。

11

ImageIcon ImageIcon 控件是 Icon 界面的实现,可从图像绘制 Icon

12

JScrollbar Scrollbar 控件表示滚动条组件,以便用户可以从值范围中进行选择。

13

JOptionPane JOptionPane 提供了一组标准对话框,提示用户输入值或告知其某些信息。

14

JFileChooser JFileChooser 控件表示一个对话框窗口,用户可以从中选择文件。

15

JProgressBar 随着任务接近完成,进度条显示任务的完成百分比。

16

JSlider A JSlider 控件通过在一个有界区间内滑动旋钮让用户以图形方式选择一个值。

17

JSpinner A JSpinner 控件是一个单行输入字段,允许用户从一个有序序列中选择一个数字或对象值。

我们会在后续示例中使用其中一些控件。