AWT Menu 菜单类
简介
Menu 类表示从菜单栏部署的下拉菜单组件。
类声明
以下是 java.awt.Menu 类的声明:
public class Menu extends MenuItem implements MenuContainer, Accessible
类构造函数
S.N. | 构造函数 &描述 |
---|---|
1 | Menu() 构造一个带有空标签的新菜单。 |
2 | Menu(String label) 构造一个带有指定标签的新菜单。 |
3 | Menu(String label, boolean teaOff) 构造一个带有指定标签的新菜单,指示菜单是否可以撕下。 |
类方法
S.N. | 方法与说明 |
---|---|
1 | MenuItem add(MenuItem mi) 将指定的菜单项添加到此菜单。 |
2 | void add(String label) 将具有指定标签的项添加到此菜单。 |
3 | void addNotify() 创建菜单的对等项。 |
4 | void addSeparator() 在当前菜单中添加分隔线或连字符位置。 |
5 | int countItems() 已弃用。从 JDK 1.1 版开始,由 getItemCount() 取代。 |
6 | AccessibleContext getAccessibleContext() 获取与此菜单关联的 AccessibleContext。 |
7 | MenuItem getItem(int index) 获取位于此菜单指定索引处的项。 |
8 | int getItemCount() 获取此菜单中的项数。 |
9 | void insert(MenuItem menuitem, int index) 将菜单项插入此菜单的指定的位置。 |
10 | void insert(String label, int index) 将具有指定标签的菜单项插入到此菜单的指定位置。 |
11 | void insertSeparator(int index) 在指定位置插入分隔符。 |
12 | boolean isTearOff() 指示此菜单是否为撕下菜单。 |
13 | String paramString() 返回表示此菜单状态的字符串菜单。 |
14 | void remove(int index) 从此菜单中移除指定索引处的菜单项。 |
15 | void remove(MenuComponent item) 从此菜单中移除指定的菜单项。 |
16 | void removeAll() 从此菜单中移除所有项目。 |
17 | void removeNotify() 移除菜单的对等项。 |
继承的方法
此类从以下类继承方法:
java.awt.MenuItem
java.awt.MenuComponent
java.lang.Object
Menu 示例
使用您选择的任何编辑器在 D:/ > AWT > com > tutorialspoint > gui > 中创建以下 Java 程序
AWTMenuDemo.javapackage com.tutorialspoint.gui; import java.awt.*; import java.awt.event.*; public class AWTMenuDemo { private Frame mainFrame; private Label headerLabel; private Label statusLabel; private Panel controlPanel; public AWTMenuDemo(){ prepareGUI(); } public static void main(String[] args){ AWTMenuDemo awtMenuDemo = new AWTMenuDemo(); awtMenuDemo.showMenuDemo(); } private void prepareGUI(){ mainFrame = new Frame("Java AWT Examples"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); headerLabel = new Label(); headerLabel.setAlignment(Label.CENTER); statusLabel = new Label(); statusLabel.setAlignment(Label.CENTER); statusLabel.setSize(350,100); controlPanel = new Panel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showMenuDemo(){ //create a menu bar final MenuBar menuBar = new MenuBar(); //create menus Menu fileMenu = new Menu("File"); Menu editMenu = new Menu("Edit"); final Menu aboutMenu = new Menu("About"); //create menu items MenuItem newMenuItem = new MenuItem("New",new MenuShortcut(KeyEvent.VK_N)); newMenuItem.setActionCommand("New"); MenuItem openMenuItem = new MenuItem("Open"); openMenuItem.setActionCommand("Open"); MenuItem saveMenuItem = new MenuItem("Save"); saveMenuItem.setActionCommand("Save"); MenuItem exitMenuItem = new MenuItem("Exit"); exitMenuItem.setActionCommand("Exit"); MenuItem cutMenuItem = new MenuItem("Cut"); cutMenuItem.setActionCommand("Cut"); MenuItem copyMenuItem = new MenuItem("Copy"); copyMenuItem.setActionCommand("Copy"); MenuItem pasteMenuItem = new MenuItem("Paste"); pasteMenuItem.setActionCommand("Paste"); MenuItemListener menuItemListener = new MenuItemListener(); newMenuItem.addActionListener(menuItemListener); openMenuItem.addActionListener(menuItemListener); saveMenuItem.addActionListener(menuItemListener); exitMenuItem.addActionListener(menuItemListener); cutMenuItem.addActionListener(menuItemListener); copyMenuItem.addActionListener(menuItemListener); pasteMenuItem.addActionListener(menuItemListener); final CheckboxMenuItem showWindowMenu = new CheckboxMenuItem("Show About", true); showWindowMenu.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { if(showWindowMenu.getState()){ menuBar.add(aboutMenu); }else{ menuBar.remove(aboutMenu); } } }); //add menu items to menus fileMenu.add(newMenuItem); fileMenu.add(openMenuItem); fileMenu.add(saveMenuItem); fileMenu.addSeparator(); fileMenu.add(showWindowMenu); fileMenu.addSeparator(); fileMenu.add(exitMenuItem); editMenu.add(cutMenuItem); editMenu.add(copyMenuItem); editMenu.add(pasteMenuItem); //add menu to menubar menuBar.add(fileMenu); menuBar.add(editMenu); menuBar.add(aboutMenu); //add menubar to the frame mainFrame.setMenuBar(menuBar); mainFrame.setVisible(true); } class MenuItemListener implements ActionListener { public void actionPerformed(ActionEvent e) { statusLabel.setText(e.getActionCommand() + " MenuItem clicked."); } } }
使用命令提示符编译程序。转到 D:/ > AWT 并键入以下命令。
D:\AWT>javac com utorialspoint\gui\AWTMenuDemo.java
如果没有错误,则表示编译成功。使用以下命令运行程序。
D:\AWT>java com.tutorialspoint.gui.AWTMenuDemo
验证以下输出。(单击文件菜单。)
