JMenuBar、jMenus和JMenuItems是JavaSwing包的一部分。JMenuBar是菜单栏的一个实现。JMenuBar包含一个或多个JMenu对象,当选中JMenu对象时,它们会显示一个弹出窗口,显示一个或多个JMenuItems。 JMenu基本上代表一个菜单。它包含几个JMenuItem对象。它还可能包含JMenu对象(或子菜单)。
null
施工人员:
- JMenuBar(): 创建一个新菜单栏。
- JMenu(): 创建一个没有文本的新菜单。
- JMenu(字符串名): 创建具有指定名称的新菜单。
- JMenu(字符串名,布尔b): 创建具有指定名称和布尔值的新菜单 值将其指定为或不指定为下拉菜单。可以打开撕下的菜单,并将其从父菜单栏或菜单中拖出。
常用方法:
- 添加(JMC): 将菜单添加到菜单栏。将JMenu对象添加到菜单栏。
- 添加(c部分): 将组件添加到JMenu的末尾
- 添加(组件c,整数索引): 将组件添加到JMenu的指定索引
- 添加(JMenuItem菜单项): 将菜单项添加到菜单的末尾。
- 添加(字符串s): 创建具有指定字符串的菜单项,并将其附加到菜单末尾。
- getItem(int索引): 返回给定索引处指定的menuitem
下面的程序将演示JMenuBar的使用
1.制作菜单栏并向其中添加菜单项的程序
// Java program to construct // Menu bar to add menu items import java.awt.*; import javax.swing.*; import java.awt.event.*; public class menu extends JFrame { // menubar static JMenuBar mb; // JMenu static JMenu x; // Menu items static JMenuItem m1, m2, m3; // create a frame static JFrame f; public static void main() { // create a frame f = new JFrame( "Menu demo" ); // create a menubar mb = new JMenuBar(); // create a menu x = new JMenu( "Menu" ); // create menuitems m1 = new JMenuItem( "MenuItem1" ); m2 = new JMenuItem( "MenuItem2" ); m3 = new JMenuItem( "MenuItem3" ); // add menu items to menu x.add(m1); x.add(m2); x.add(m3); // add menu to menu bar mb.add(x); // add menubar to frame f.setJMenuBar(mb); // set the size of the frame f.setSize( 500 , 500 ); f.setVisible( true ); } } |
输出:
2.添加菜单栏、添加菜单项、子菜单项以及向菜单项添加ActionListener的程序
// Java program Program to add a menubar // and add menuitems, submenu items and also add // ActionListener to menu items import java.awt.*; import javax.swing.*; import java.awt.event.*; public class menu1 extends JFrame implements ActionListener { // menubar static JMenuBar mb; // JMenu static JMenu x, x1; // Menu items static JMenuItem m1, m2, m3, s1, s2; // create a frame static JFrame f; // a label static JLabel l; // main class public static void main() { // create an object of the class menu1 m = new menu1(); // create a frame f = new JFrame( "Menu demo" ); // create a label l = new JLabel( "no task " ); // create a menubar mb = new JMenuBar(); // create a menu x = new JMenu( "Menu" ); x1 = new JMenu( "submenu" ); // create menuitems m1 = new JMenuItem( "MenuItem1" ); m2 = new JMenuItem( "MenuItem2" ); m3 = new JMenuItem( "MenuItem3" ); s1 = new JMenuItem( "SubMenuItem1" ); s2 = new JMenuItem( "SubMenuItem2" ); // add ActionListener to menuItems m1.addActionListener(m); m2.addActionListener(m); m3.addActionListener(m); s1.addActionListener(m); s2.addActionListener(m); // add menu items to menu x.add(m1); x.add(m2); x.add(m3); x1.add(s1); x1.add(s2); // add submenu x.add(x1); // add menu to menu bar mb.add(x); // add menubar to frame f.setJMenuBar(mb); // add label f.add(l); // set the size of the frame f.setSize( 500 , 500 ); f.setVisible( true ); } public void actionPerformed(ActionEvent e) { String s = e.getActionCommand(); // set the label to the menuItem that is selected l.setText(s + " selected" ); } } |
输出:
注: 以下程序可能无法在联机编译器中运行,请使用脱机IDE。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END