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)
从命令提示符运行上面的脚本。它将显示以下显示一个窗口的输出。
Swing GUI 库以 Java 中的 javax.swing 包形式提供。它的主要容器类 JFrame 和 JDialog 分别派生自 AWT 库中的 Frame 和 Dialog 类。 JLabel, JButton, JTextField, 等其他 GUI 控件派生自 JComponent 类。
以下插图显示了 Swing 包类层次结构。
下表总结了 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 控件是一个单行输入字段,允许用户从一个有序序列中选择一个数字或对象值。 |
我们会在后续示例中使用其中一些控件。