Classe AWT MenuBar

Introdução

A classe MenuBar fornece uma barra de menus vinculada a um quadro e é específica da plataforma.

Declaração de classe

A seguir está a declaração para java.awt.MenuBar classe:

public class MenuBar
   extends MenuComponent
      implements MenuContainer, Accessible

Construtores de classe

SN Construtor e descrição
1

MenuBar()

Cria uma nova barra de menu.

Métodos de aula

SN Método e Descrição
1

void dispatchEvent(AWTEvent e)

2

Menu add(Menu m)

Adiciona o menu especificado à barra de menus.

3

void addNotify()

Cria o par da barra de menu.

4

int countMenus()

Descontinuada. A partir do JDK versão 1.1, substituído por getMenuCount ().

5

void deleteShortcut(MenuShortcut s)

Exclui o atalho de menu especificado.

6

AccessibleContext getAccessibleContext()

Obtém o AccessibleContext associado a este MenuBar.

7

Menu getHelpMenu()

Obtém o menu de ajuda na barra de menus.

8

Menu getMenu(int i)

Obtém o menu especificado.

9

int getMenuCount()

Obtém o número de menus na barra de menus.

10

MenuItem getShortcutMenuItem(MenuShortcut s)

Obtém a instância de MenuItem associada ao objeto MenuShortcut especificado ou null se nenhum dos itens de menu gerenciados por esta barra de menus estiver associado ao atalho de menu especificado.

11

void remove(int index)

Remove o menu localizado no índice especificado desta barra de menus.

12

void remove(MenuComponent m)

Remove o componente de menu especificado desta barra de menus.

13

void removeNotify()

Remove o par da barra de menu.

14

void setHelpMenu(Menu m)

Define o menu especificado como o menu de ajuda desta barra de menus.

15

Enumeration shortcuts()

Obtém uma enumeração de todos os atalhos de menu que esta barra de menu está gerenciando.

Métodos herdados

Esta classe herda métodos das seguintes classes:

  • java.awt.MenuComponent

  • java.lang.Object

Exemplo de MenuBar

Crie o seguinte programa java usando qualquer editor de sua escolha em dizer 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.");
      }    
   }
}

Compile o programa usando o prompt de comando. Vamos paraD:/ > AWT e digite o seguinte comando.

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

Se nenhum erro ocorrer, significa que a compilação foi bem-sucedida. Execute o programa usando o seguinte comando.

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

Verifique a seguinte saída