当前位置:网站首页 > 技术博客 > 正文

javaswing菜单栏工具栏



http://zetcode.com/tutorials/javaswingtutorial/menusandtoolbars/

在 Java Swing 教程的这一部分中,我们将使用菜单和工具栏。 在示例中,我们将创建常规菜单,子菜单,复选框菜单项,单选按钮菜单项,弹出菜单和工具栏。

Tweet

菜单是位于菜单栏中的一组命令。 工具栏上的按钮带有应用中的一些常用命令。

我们将使用以下组件:

  • - 实现菜单栏。
  • — 实现一个菜单,一个包含的弹出窗口,当用户在上选择一个项目时显示。
  • - 在菜单中实现一个项目。 用户选择它来执行操作。
  • - 提供用于实现分隔线的通用组件。
  • ­- 实现可以选择或取消选择的菜单。
  • ­- 实现单选按钮菜单项,用于相互排斥的选择。
  • ­- 为一组按钮创建一个多重排除范围。
  • ­- 实现一个弹出菜单,一个弹出的小窗口并显示一系列选项。
  • - 实现工具栏,该工具栏对于显示常用的或控件很有用。

我们从一个简单的菜单栏示例开始。

 
  

我们的示例将显示一个菜单项。 选择退出菜单项,我们关闭应用。

 
  

使用创建菜单栏。

 
  

菜单中显示退出图标。

 
  

使用类创建菜单对象。 也可以通过键盘访问菜单。 要将菜单绑定到特定键,我们使用方法。 在我们的情况下,可以使用 快捷方式打开菜单。

 
  

菜单对象由菜单项组成。 使用类创建一个菜单项。 菜单项具有其自己的助记符。 可以使用 组合键激活。

 
  

此代码行为菜单项创建工具提示。

 
  

是一种特殊的按钮组件。 我们向它添加了一个动作监听器,它终止了应用。

 
  

菜单项被添加到菜单对象,菜单对象被插入菜单栏。

 
  

方法设置容器的菜单栏。

Simple menu

图:简单菜单

每个菜单也可以有一个子菜单。 这样,我们可以将类似的命令分组。 例如,我们可以将用于隐藏和显示各种工具栏(例如个人栏,地址栏,状态栏或导航栏)的命令放在称为工具栏的子菜单中。 在菜单中,我们可以使用分隔符来分隔命令。 分隔符是一条简单的线。 通常的做法是使用单个分隔符将“新建”,“打开”,“保存”等命令与“打印”,“打印预览”等命令分开。 除助记符外,还可通过加速器启动菜单命令。

 
  

本示例创建一个子菜单,并使用菜单分隔符分隔菜单项组。

 
  

子菜单与其他任何普通菜单一样。 它是用相同的方式创建的。 我们只需将菜单添加到现有菜单即可。

 
  

使用方法将工具提示设置为“退出”菜单项。

 
  

此构造器创建带有标签和图标的菜单项。

 
  

分隔符是一条水平线,可以在视觉上分隔菜单项。 这样,我们可以将项目分组到一些合理的位置。 使用方法创建分隔符。

Submenu

图:子菜单

助记符和加速键是使您能够通过键盘执行命令的快捷键。 助记符导航菜单层次结构以选择特定的菜单项,而加速器则跳过菜单层次结构并直接激活菜单项。

下面的示例利用操作,这些操作是可以由需要相同功能的不同组件共享的对象。

 
  

该示例包含多个助记符和一个加速器。 三个菜单项共享一个动作对象。 选择这三个菜单项会使它们的操作命令打印到控制台。

 
  

助记符设置为“文件”菜单。 现在可以使用 快捷键激活菜单。

 
  

“新建”菜单项将操作对象作为参数。 其构造器将文本标签,图标和助记键作为参数。

 
  

“退出”菜单项不使用操作对象。 其功能是单独构建的。 我们调用方法来设置助记键。 要使用助记符,该组件必须在屏幕上可见。 因此,我们必须首先激活菜单对象,使“退出”菜单项可见,然后才能激活此菜单项。 这意味着此菜单项通过 组合键激活。

 
  

加速器是直接启动菜单项的快捷键。 在我们的情况下,通过按 关闭我们的应用。 通过方法设置加速器。

 
  

此动作类的一个实例由三个菜单项共享。 动作使用各种键来定义其功能。 方法将字符串值与指定的键关联。

Mnemonics and accelerators

图:助记符和加速器

带下划线的字符在视觉上提示助记符,加速器的快捷键显示在菜单项标签的旁边。

是可以选择或取消选择的菜单项。 如果选中该菜单项,通常会在其旁边带有对勾标记。 如果未选择或取消选择,菜单项将显示而没有选中标记。 与常规菜单项一样,复选框菜单项可以具有与之关联的文本或图形图标,或两者都有。

 
  

本示例使用来切换状态栏的可见性。

 
  

状态栏是一个简单的组件。 我们在标签周围放置了凸起的,以使其可见。

 
  

创建一个复选框菜单项。 标签上有两个字母; 因此,我们使用方法来选择要强调的内容。 我们选择了第二个。

 
  

因为状态栏最初是可见的,所以我们调用的方法来选择它。

 
  

是一种特殊的按钮组件。 它实现了接口。 可用于监听其状态变化。 根据其状态,我们显示或隐藏状态栏。

JCheckBoxMenuItem

图:

使您可以从互斥的选项列表中进行选择。 选择特定的会取消选择所有其他项目。 将放入。

 
  

该示例创建一个包含三个组件的菜单。

 
  

用于为一组按钮创建一个多重排除范围。

 
  

创建一个新的。 用方法选择它,并用方法放置在按钮组中。

 
  

用于监听的事件。 确定状态更改的类型。 如果更改为,我们将在状态栏上更改状态。 (另一个状态更改是。)

JRadioButtonMenuItem

图:

某些应用在右侧显示菜单。 通常,它是一个“帮助”菜单。

 
  

该示例在左侧显示三个菜单,在右侧显示一个菜单。

 
  

将创建一个菜单栏和四个菜单对象。

 
  

添加三个菜单后,我们使用方法在菜单栏上添加水平胶水。 胶水会吸收所有可用的额外空间。 这会将“帮助”菜单推到菜单栏的右侧。

Help menu on the right

图:右侧的帮助菜单

菜单的另一种类型是弹出菜单。 Java Swing 具有此功能的类。 它也称为上下文菜单,通常在右键单击组件时显示。 想法是仅提供与当前上下文相关的命令。 说我们有一张图片。 通过右键单击图像,我们将弹出一个窗口,其中包含用于保存,缩放或移动图像的命令。

 
  

该示例显示了带有两个命令的弹出菜单。 第一个命令最大化窗口,第二个命令退出应用。

 
  

创建一个弹出菜单。

 
  

弹出菜单由组成。 此项目将最大化框架。 方法确定帧的状态。 可用状态为:,,,和。 最大化帧后,我们将使用方法禁用菜单项。

 
  

菜单项通过插入到弹出菜单中。

 
  

弹出菜单显示在我们用鼠标按钮单击的位置。 方法返回哪些鼠标按钮已更改状态。 仅在右键单击时启用弹出菜单。 一旦窗口未最大化,我们将启用最大化菜单项。

JPopupMenu

图:

菜单将我们可以在应用中使用的命令分组。 使用工具栏可以快速访问最常用的命令。 在 Java Swing 中,类在应用中创建一个工具栏。

 
  

该示例创建一个带有一个退出按钮的工具栏。

 
  

使用创建工具栏。

 
  

我们创建一个按钮并将其添加到工具栏。 插入工具栏中的按钮是常规。

 
  

工具栏位于的北部区域。 (是,,,和内容窗格的默认布局管理器。

JToolBar

图:

通常需要在窗口上显示多个工具栏。 以下示例显示了如何执行此操作。

 
  

窗口顶部显示两个工具栏。

 
  

使用创建两个工具栏对象。

 
  

管理器用于将工具栏放置在容器的顶部。

Toolbars

图:工具栏 s

在 Java Swing 教程的这一部分中,我们提到了菜单和工具栏。 我们使用了以下组件:,,,,,,,和。


我们一直在努力

apachecn/AiLearning

【布客】中文翻译组


  • 上一篇: 华为产品ipd
  • 下一篇: 爬虫python下载安装
  • 版权声明


    相关文章:

  • 华为产品ipd2025-06-02 18:30:03
  • flowable 流程图2025-06-02 18:30:03
  • 函数已有主体是什么意思2025-06-02 18:30:03
  • gif动画录制工具手机版2025-06-02 18:30:03
  • 安卓刷机后怎么绕过激活锁2025-06-02 18:30:03
  • 爬虫python下载安装2025-06-02 18:30:03
  • 简述hadoop原理及运行机制2025-06-02 18:30:03
  • 原生js实现ajax步骤2025-06-02 18:30:03
  • 结构体c语言代码2025-06-02 18:30:03
  • c语言数组指针的定义2025-06-02 18:30:03