- Jython 教程
- Jython - 首页
- Jython - 概述
- Jython - 安装
- Jython - 导入 Java 库
- Jython - 变量和数据类型
- Jython - 使用 Java 集合类型
- Jython - 决策控制
- Jython - 循环
- Jython - 函数
- Jython - 模块
- Jython - 包
- Jython - Java 应用程序
- Jython - Eclipse 插件
- Jython - Eclipse 中的项目
- Jython - NetBeans 插件和项目
- Jython - Servlets
- Jython - JDBC
- Jython - 使用 Swing GUI 库
- Jython - 布局管理
- Jython - 事件处理
- Jython - 菜单
- Jython - 对话框
- Jython 有用资源
- Jython - 快速指南
- Jython - 有用资源
- Jython - 讨论
Jython - 菜单
大多数基于 GUI 的应用程序在顶部都有一个菜单栏。它位于顶级窗口标题栏的正下方。javax.swing 包具有构建高效菜单系统的完善功能。它借助JMenuBar、JMenu和JMenuItem类构建。
在下面的示例中,在顶级窗口中提供了菜单栏。一个包含三个菜单项按钮的“文件”菜单被添加到菜单栏中。现在让我们准备一个 JFrame 对象,并将布局设置为 BorderLayout。
frame = JFrame("JMenuBar example") frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) frame.setLocation(100,100) frame.setSize(400,300) frame.setLayout(BorderLayout())
现在,通过 SetJMenuBar() 方法激活 JMenuBar 对象。
bar = JMenuBar() frame.setJMenuBar(bar)
接下来,声明一个具有“文件”标题的 JMenu 对象。三个 JMenuItem 按钮被添加到“文件”菜单中。当单击任何菜单项时,将执行 ActionEvent 处理程序 OnClick() 函数。它使用 actionPerformed 属性定义。
file = JMenu("File") newfile = JMenuItem("New",actionPerformed = OnClick) openfile = JMenuItem("Open",actionPerformed = OnClick) savefile = JMenuItem("Save",actionPerformed = OnClick) file.add(newfile) file.add(openfile) file.add(savefile) bar.add(file)
OnClick() 事件处理程序通过 gwtActionCommand() 函数检索 JMenuItem 按钮的名称,并在窗口底部的文本框中显示它。
def OnClick(event): txt.text = event.getActionCommand()
“文件”菜单对象被添加到菜单栏中。最后,在 JFrame 对象底部添加了一个 JTextField 控件。
txt = JTextField(10) frame.add(txt, BorderLayout.SOUTH)
下面给出了 menu.py 的完整代码:
from javax.swing import JFrame, JMenuBar, JMenu, JMenuItem, JTextField from java.awt import BorderLayout frame = JFrame("JMenuBar example") frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) frame.setLocation(100,100) frame.setSize(400,300) frame.setLayout(BorderLayout()) def OnClick(event): txt.text = event.getActionCommand() bar = JMenuBar() frame.setJMenuBar(bar) file = JMenu("File") newfile = JMenuItem("New",actionPerformed = OnClick) openfile = JMenuItem("Open",actionPerformed = OnClick) savefile = JMenuItem("Save",actionPerformed = OnClick) file.add(newfile) file.add(openfile) file.add(savefile) bar.add(file) txt = JTextField(10) frame.add(txt, BorderLayout.SOUTH) frame.setVisible(True)
当使用 Jython 解释器执行上述脚本时,会出现一个带有“文件”菜单的窗口。单击它,它的三个菜单项将下拉。如果单击任何按钮,它的名称将显示在文本框控件中。
广告