Clase AWT MenuBar

Introducción

La clase MenuBar proporciona una barra de menú vinculada a un marco y es específica de la plataforma.

Declaración de clase

A continuación se muestra la declaración de java.awt.MenuBar clase:

public class MenuBar
   extends MenuComponent
      implements MenuContainer, Accessible

Constructores de clases

SN Constructor y descripción
1

MenuBar()

Crea una nueva barra de menú.

Métodos de clase

SN Método y descripción
1

void dispatchEvent(AWTEvent e)

2

Menu add(Menu m)

Agrega el menú especificado a la barra de menú.

3

void addNotify()

Crea el par de la barra de menú.

4

int countMenus()

Obsoleto. A partir de la versión 1.1 de JDK, reemplazado por getMenuCount ().

5

void deleteShortcut(MenuShortcut s)

Elimina el atajo de menú especificado.

6

AccessibleContext getAccessibleContext()

Obtiene AccessibleContext asociado a esta barra de menú.

7

Menu getHelpMenu()

Obtiene el menú de ayuda en la barra de menús.

8

Menu getMenu(int i)

Obtiene el menú especificado.

9

int getMenuCount()

Obtiene el número de menús de la barra de menús.

10

MenuItem getShortcutMenuItem(MenuShortcut s)

Obtiene la instancia de MenuItem asociada con el objeto MenuShortcut especificado, o null si ninguno de los elementos de menú administrados por esta barra de menús está asociado con el acceso directo de menú especificado.

11

void remove(int index)

Elimina el menú ubicado en el índice especificado de esta barra de menú.

12

void remove(MenuComponent m)

Elimina el componente de menú especificado de esta barra de menú.

13

void removeNotify()

Elimina el par de la barra de menú.

14

void setHelpMenu(Menu m)

Establece el menú especificado para que sea el menú de ayuda de esta barra de menús.

15

Enumeration shortcuts()

Obtiene una enumeración de todos los accesos directos de menú que administra esta barra de menús.

Métodos heredados

Esta clase hereda métodos de las siguientes clases:

  • java.awt.MenuComponent

  • java.lang.Object

Ejemplo de MenuBar

Cree el siguiente programa java usando cualquier editor de su elección en digamos 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 el programa usando el símbolo del sistema. IrD:/ > AWT y escriba el siguiente comando.

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

Si no aparece ningún error, eso significa que la compilación se realizó correctamente. Ejecute el programa usando el siguiente comando.

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

Verifique la siguiente salida