Jython - 使用 Swing GUI 库


Jython 的主要功能之一是它能够使用 JDK 中的 Swing GUI 库。标准 Python 发行版(通常称为 CPython)附带了Tkinter GUI 库。其他 GUI 库(如PyQtWxPython)也可以与它一起使用,但 swing 库提供了一个独立于平台的 GUI 工具包。

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

基本的顶层窗口是通过声明JFrame 类的对象并将其visible属性设置为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)

从命令提示符运行上述脚本。它将显示以下输出并显示一个窗口。

窗户

swing GUI 库以 Java 中的javax.swing包的形式提供。它的主要容器类JFrameJDialog分别派生自AWT库中的Frame和Dialog类。其他 GUI 控件(如JLabel、JButton、JTextField等)均派生自 JComponent 类。

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

Swing 包类层次结构

下表总结了 swing 库中不同的 GUI 控制类 -

先生。 类别和描述
1

J标签

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

2

J按钮

此类创建一个带标签的按钮。

3

J颜色选择器

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

4

复选框

JCheckBox 是一个图形组件,可以处于打开(true) 或关闭(false) 状态。

5

J单选按钮

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

6

列表

JList 组件向用户呈现文本项的滚动列表。

7

J组合框

JComboBox 组件向用户呈现项目的下拉列表

8

文本字段

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

9

J密码字段

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

10

文本区

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

11

图像图标

ImageIcon 控件是 Icon 接口的实现,可从图像绘制图标

12

JScrollbar

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

13

J选项面板

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

14

文件选择器

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

15

J进度条

随着任务逐渐完成,进度条会显示任务的完成百分比。

16

JS滑块

JSlider 允许用户通过在有限的间隔内滑动旋钮来以图形方式选择一个值。

17 号

JSpinner

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

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