4.6 菜单
4.6 菜单 菜单组件 菜单栏(MenuBar、JMenuBar) 菜单(Menu、JMenu) 菜单项(MenuItem、JMenuItem)
MenuBar mb = new MenuBar(); 4.6.1 菜单栏(MenuBar、JMenuBar) 作用 整个菜单树的根基。 创建菜单栏 MenuBar mb = new MenuBar(); 添加菜单栏到Frame窗口 调用Frame类的setMenuBar()方法。 frame1.setMenuBar(mb);
4.6.1 菜单栏(MenuBar、JMenuBar) 主要成员方法 void add(Menu) 将指定菜单加入菜单栏 Menu getMenu(int) 返回指定位置上的菜单 int getMenuCount() 返回菜单栏中的菜单数 MenuBar:void remove(int) 删除指定位置上的菜单 MenuBar:void remove(MenuComponent) 删除指定的菜单组件
4.6.2 菜单(Menu、JMenu) 功能 从菜单栏部署的下拉式菜单组件;可以被添加到MenuBar中或其他Menu中。 继承关系
4.6.2 菜单(Menu、JMenu) 创建菜单 添加菜单到MenuBar菜单栏 添加帮组菜单到MenuBar菜单栏 Menu m1=new Menu(); 添加菜单到MenuBar菜单栏 添加帮组菜单到MenuBar菜单栏 调用MenuBar类的add()方法: mb. add(m1); 调用MenuBar类的setHelpMenu()方法: Menu m2 = new Menu(“帮助”); mb.setHelpMenu(m2);
4.6.2 菜单(Menu、JMenu) 主要成员方法 void add(MenuItem) 增加一个菜单项 void add(String) 增加一个带指定标签的菜单项 void addSeparator() 加分隔线 int getItemcount( ) 返回菜单的菜单项数 int getItem(int) 返回指定位置上的菜单项 void remove(int) 删除指定位置上的菜单项 void remove(MenuComponent) 删除指定的菜单项组件
菜单树中的“叶子节点”;通常被添加到一个Menu中。 4.6.3 菜单项(MenuItem、JMenuItem) 功能 菜单树中的“叶子节点”;通常被添加到一个Menu中。 产生的事件 ActionEvent
MenuItem mi1 = new MenuItem(“打开”); 4.6.3 菜单项(MenuItem、JMenuItem) 创建菜单项 MenuItem mi1 = new MenuItem(“打开”); 添加菜单项到Menu菜单 调用Menu类的add()方法。 m1. add(mi1); 添加“分割线”到Menu菜单 调用Menu类的addSeparator()方法。 m1.addSeparator();
4.6.3 菜单项(MenuItem、JMenuItem) 主要成员方法 void setEnabled(boolean) 设置菜单项是否有效 boolean isEnabled () 返回菜单项是否有效 String getLabel( ) 获取菜单项的标签 void setLabel(String label) 设置菜单项的标签 void addActionListener(ActionListener a) 添加指定的事件监听器对象,以便从该菜单项接收动作事件。
4.6.4 可选菜单项(CheckBoxMenuItem、JCheckBoxMenuItem) 功能 产生的事件 表示一个可包括在菜单中的复选框。选择菜单中的复选框可以将其状态从 "开" 更改为 "关" 或者从 "关" 更改为 "开"。 ItemEvent
创建可选菜单项 添加可选菜单项到Menu菜单 4.6.4 可选菜单项(CheckBoxMenuItem、JCheckBoxMenuItem) 创建可选菜单项 CheckBoxMenuItem cm1=new CheckBoxMenuItem(String); CheckBoxMenuItem cm2=new CheckBoxMenuItem(String,boolean ); 添加可选菜单项到Menu菜单 调用Menu类的add()方法。 m1. add(cm1); m1. add(cm2);
4.6.4 可选菜单项(CheckBoxMenuItem、JCheckBoxMenuItem) 主要成员方法 boolean getState() 返回可选菜单项的状态值 void setState(boolean ) 设置可选菜单项的状态值
4.6.5 弹出菜单(PopupMenu、JPopupMenu) 功能 实现能够在组件中的指定位置上动态弹出的菜单。 继承关系
4.6.5 弹出菜单(PopupMenu、JPopupMenu) 特点 正如继承层次关系所暗示的那样,任何可以使用 Menu(JMenu) 的地方都可以使用 PopupMenu(或者JPopupMenu)。 创建快捷菜单并 添加到组件上 PopupMenu pm=new PopupMenu(“快捷菜单1”); panel2.add(pm);//以添加到面板对象上为例。 主要方法 void show(Component, int, int) 在指定组件的指定位置显示快捷菜单
本章小结