在一个窗口中,我们经常需要给窗口添加菜单条。在 Java 中这一部分是由三个类实现的,它们是JMenuBar、JMenu和JMenuItem,分别对应菜单条、菜单和菜单项。
同时,可以给JMenuItem注册侦听器,但不能对JMenuBar,JMenu注册侦听器.
一、菜单条(JMenuBar)
JMenuBar 的构造方法是 JMenuBar(),相当简单。在构造之后,还要将它设置成窗口的菜单条,这里要用 setJMenuBar 方法:
JMenuBar TestJMenuBar=new JMenuBar();
TestFrame.setJMenuBar(TestJMenuBar);
需要说明的是,JMenuBar 类根据 JMenu 添加的顺序从左到右显示,并建立整数索引。
二、菜单(JMenu)
在添加完菜单条后,并不会显示任何菜单,所以还需要在菜单条中添加菜单。菜单 JMenu 类的构造方法有4种:
JMenu() 构造一个空菜单。 JMenu(Action a) 构造一个菜单,菜单属性由相应的动作来提供。 JMenu(String s) 用给定的标志构造一个菜单。 JMenu(String s,Boolean b) 用给定的标志构造一个菜单。如果布尔值为false,那么当释放鼠标按钮后,菜单项会消失;如果布尔值为true,那么当释放鼠标按钮后,菜单项仍将显示。这时的菜单称为 tearOff 菜单。
在构造完后,使用 JMenuBar 类的 add 方法添加到菜单条中。
三、菜单项(JmenuItem)
接下来的工作是往菜单中添加内容。 在菜单中可以添加不同的内容,可以是菜单项(JMenuItem),可以是一个子菜单,也可以是分隔符。
在构造完后,使用 JMenu 类的 add 方法添加到菜单中。
子菜单的添加是直接将一个子菜单添加到母菜单中,而分隔符的添加只需要将分隔符作为菜单项添加到菜单中。
JMenuBar要set,JMenu要add ,JMenu在new的时候直接指定名字。
相关文章
- GUI(JMenuBar+JMenu+JMenuItem)
- Swing基本组件使用3(JMenuBar,JMenu,JMenuItem)
- 使用JMenuBar、JMenu和JMenuItem自设计菜单栏时,会出现奇怪的呈现。
- JavaGUI——swing组件基础(八)菜单栏/菜单/子菜单组件JMenuBar/JMenu/JMenuItem
- JMenuBar,JMenu,JMenuItem的关系
- Swing超基础学习总结——5、菜单(JMenu、JMenuBar、JMenuItem)
- 使用JMenuBar类、JMenu类和JMenuItem类创建的菜单可不可以添加快捷键?
- JMenuBar 和 Jmenu的使用
- 从其父JMenu获取JMenuItem的位置