AWT MenuBar 类



简介

MenuBar 类提供绑定到框架的菜单栏,并且是平台特定的。

类声明

以下是java.awt.MenuBar类的声明

public class MenuBar
   extends MenuComponent
      implements MenuContainer, Accessible

类构造函数

序号构造函数 & 描述
1

MenuBar()

创建一个新的菜单栏。

类方法

序号方法 & 描述
1

void dispatchEvent(AWTEvent e)

2

Menu add(Menu m)

将指定的菜单添加到菜单栏。

3

void addNotify()

创建菜单栏的同级。

4

int countMenus()

已过时。从 JDK 版本 1.1 开始,由 getMenuCount() 替换。

5

void deleteShortcut(MenuShortcut s)

删除指定的菜单快捷键。

6

AccessibleContext getAccessibleContext()

获取与此 MenuBar 关联的 AccessibleContext。

7

Menu getHelpMenu()

获取菜单栏上的帮助菜单。

8

Menu getMenu(int i)

获取指定的菜单。

9

int getMenuCount()

获取菜单栏上的菜单数量。

10

MenuItem getShortcutMenuItem(MenuShortcut s)

获取与指定的 MenuShortcut 对象关联的 MenuItem 实例,如果此菜单栏管理的菜单项中没有一个与指定的菜单快捷键关联,则返回 null。

11

void remove(int index)

从此菜单栏中删除位于指定索引处的菜单。

12

void remove(MenuComponent m)

从此菜单栏中删除指定的菜单组件。

13

void removeNotify()

删除菜单栏的同级。

14

void setHelpMenu(Menu m)

将指定的菜单设置为此菜单栏的帮助菜单。

15

Enumeration shortcuts()

获取此菜单栏正在管理的所有菜单快捷键的枚举。

继承的方法

此类继承自以下类的方法

  • java.awt.MenuComponent

  • java.lang.Object

MenuBar 示例

使用您选择的任何编辑器创建以下 Java 程序,例如在D:/ > AWT > com > tutorialspoint > gui >

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

如果没有任何错误,则表示编译成功。使用以下命令运行程序。

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

验证以下输出

AWT MenuBar
awt_menu.htm
广告

© . All rights reserved.