当前位置: 首页 > 文档资料 > JAVA AWT 中文文档 >

Menu

优质
小牛编辑
123浏览
2023-12-01

介绍 (Introduction)

Menu类表示从菜单栏部署的下拉菜单组件。

类声明

以下是java.awt.Menu类的声明:

public class Menu
   extends MenuItem
      implements MenuContainer, Accessible

类构造函数

SN构造函数和描述
1

Menu()

构造一个带有空标签的新菜单。

2

Menu(String label)

构造具有指定标签的新菜单。

3

Menu(String label, boolean tearOff)

构造一个带有指定标签的新菜单,指示菜单是否可以撕掉。

类方法

SN方法和描述
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()

获取与此Menu关联的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()

返回表示此Menu状态的字符串。

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

菜单示例

使用您选择的任何编辑器创建以下java程序,例如D:/ 》 AWT 》 com 》 iowiki 》 gui 》

AWTMenuDemo.java
package com.iowiki.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\iowiki\gui\AWTMenuDemo.java

如果没有错误,那意味着编译成功。 使用以下命令运行程序。

D:\AWT>java com.iowiki.gui.AWTMenuDemo

验证以下输出。 (单击“文件”菜单。)

AWT菜单