Classe MenuItem AWT

introduzione

La classe MenuBar rappresenta l'elemento effettivo in un menu. Tutti gli elementi in un menu dovrebbero derivare dalla classe MenuItem o da una delle sue sottoclassi. Per impostazione predefinita, rappresenta una semplice voce di menu etichettata.

Dichiarazione di classe

Di seguito è riportata la dichiarazione per java.awt.MenuItem classe:

public class MenuItem
   extends MenuComponent
      implements Accessible

Costruttori di classi

SN Costruttore e descrizione
1

MenuItem()

Costruisce un nuovo MenuItem con un'etichetta vuota e nessuna scorciatoia da tastiera.

2

MenuItem(String label)

Costruisce un nuovo MenuItem con l'etichetta specificata e nessuna scorciatoia da tastiera.

3

MenuItem(String label, MenuShortcut s)

Crea una voce di menu con una scorciatoia da tastiera associata.

Metodi di classe

SN Metodo e descrizione
1

void addActionListener(ActionListener l)

Aggiunge il listener di azioni specificato per ricevere eventi di azione da questa voce di menu.

2

void addNotify()

Crea il peer della voce di menu.

3

void deleteShortcut()

Elimina qualsiasi oggetto MenuShortcut associato a questa voce di menu.

4

void disable()

Deprecato. A partire dalla versione 1.1 di JDK, sostituito da setEnabled (booleano).

5

protected void disableEvents(long eventsToDisable)

Disabilita la consegna degli eventi a questa voce di menu per gli eventi definiti dal parametro della maschera evento specificato.

6

void enable()

Deprecato. A partire dalla versione 1.1 di JDK, sostituito da setEnabled (booleano).

7

void enable(boolean b)

Deprecato. A partire dalla versione 1.1 di JDK, sostituito da setEnabled (booleano).

8

protected void enableEvents(long eventsToEnable)

Consente la consegna degli eventi a questa voce di menu per gli eventi da definire dal parametro della maschera di evento specificato.

9

AccessibleContext getAccessibleContext()

Ottiene l'oggetto AccessibleContext associato a questo MenuItem.

10

String getActionCommand()

Ottiene il nome del comando dell'evento di azione attivato da questa voce di menu.

11

ActionListener[] getActionListeners()

Restituisce un array di tutti i listener di azioni registrati su questa voce di menu.

12

String getLabel()

Ottiene l'etichetta per questa voce di menu.

13

EventListener[] getListeners(Class listenerType)

Restituisce un array di tutti gli oggetti attualmente registrati come FooListeners su questo MenuItem.

14

MenuShortcut getShortcut()

Ottieni l'oggetto MenuShortcut associato a questa voce di menu.

15

boolean isEnabled()

Controlla se questa voce di menu è abilitata.

16

String paramString()

Restituisce una stringa che rappresenta lo stato di questo MenuItem.

17

protected void processActionEvent(ActionEvent e)

Elabora gli eventi di azione che si verificano su questa voce di menu, inviandoli a qualsiasi oggetto ActionListener registrato.

18

protected void processEvent(AWTEvent e)

Elabora gli eventi su questa voce di menu.

19

void removeActionListener(ActionListener l)

Rimuove il listener di azioni specificato in modo che non riceva più eventi di azione da questa voce di menu.

20

void setActionCommand(String command)

Imposta il nome del comando dell'evento di azione che viene generato da questa voce di menu.

21

void setEnabled(boolean b)

Determina se questa voce di menu può essere scelta o meno.

22

void setLabel(String label)

Imposta l'etichetta per questa voce di menu sull'etichetta specificata.

23

void setShortcut(MenuShortcut s)

Imposta l'oggetto MenuShortcut associato a questa voce di menu.

Metodi ereditati

Questa classe eredita i metodi dalle classi seguenti:

  • java.awt.MenuComponent

  • java.lang.Object

MenuItem Esempio

Crea il seguente programma java usando qualsiasi editor di tua scelta, diciamo 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.");
      }    
   }
}

Compilare il programma utilizzando il prompt dei comandi. Vai aD:/ > AWT e digita il seguente comando.

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

Se non viene visualizzato alcun errore, significa che la compilazione è riuscita. Esegui il programma utilizzando il seguente comando.

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

Verificare il seguente output. (Fare clic sul menu File. Selezionare qualsiasi voce di menu.)