Clase de menú AWT

Introducción

La clase Menú representa un componente de menú desplegable que se implementa desde una barra de menú.

Declaración de clase

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

public class Menu
   extends MenuItem
      implements MenuContainer, Accessible

Constructores de clases

SN Constructor y descripción
1

Menu()

Construye un nuevo menú con una etiqueta vacía.

2

Menu(String label)

Construye un nuevo menú con la etiqueta especificada.

3

Menu(String label, boolean tearOff)

Construye un nuevo menú con la etiqueta especificada, que indica si el menú se puede arrancar.

Métodos de clase

SN Método y descripción
1

MenuItem add(MenuItem mi)

Agrega el elemento de menú especificado a este menú.

2

void add(String label)

Agrega un elemento con la etiqueta especificada a este menú.

3

void addNotify()

Crea el par del menú.

4

void addSeparator()

Agrega una línea de separación, o un guión, al menú en la posición actual.

5

int countItems()

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

6

AccessibleContext getAccessibleContext()

Obtiene el AccessibleContext asociado con este menú.

7

MenuItem getItem(int index)

Obtiene el elemento ubicado en el índice especificado de este menú.

8

int getItemCount()

Obtenga la cantidad de elementos en este menú.

9

void insert(MenuItem menuitem, int index)

Inserta un elemento de menú en este menú en la posición especificada.

10

void insert(String label, int index)

Inserta un elemento de menú con la etiqueta especificada en este menú en la posición especificada.

11

void insertSeparator(int index)

Inserta un separador en la posición especificada.

12

boolean isTearOff()

Indica si este menú es un menú de corte.

13

String paramString()

Devuelve una cadena que representa el estado de este menú.

14

void remove(int index)

Elimina el elemento de menú en el índice especificado de este menú.

15

void remove(MenuComponent item)

Elimina el elemento de menú especificado de este menú.

dieciséis

void removeAll()

Elimina todos los elementos de este menú.

17

void removeNotify()

Elimina el par del menú.

Métodos heredados

Esta clase hereda métodos de las siguientes clases:

  • java.awt.MenuItem

  • java.awt.MenuComponent

  • java.lang.Object

Ejemplo de menú

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. (Haga clic en el menú Archivo).