Classe de menu AWT

introduction

La classe Menu représente un composant de menu déroulant qui est déployé à partir d'une barre de menus.

Déclaration de classe

Voici la déclaration pour java.awt.Menu classe:

public class Menu
   extends MenuItem
      implements MenuContainer, Accessible

Constructeurs de classe

SN Constructeur et description
1

Menu()

Construit un nouveau menu avec une étiquette vide.

2

Menu(String label)

Construit un nouveau menu avec l'étiquette spécifiée.

3

Menu(String label, boolean tearOff)

Construit un nouveau menu avec l'étiquette spécifiée, indiquant si le menu peut être déchiré.

Méthodes de classe

SN Méthode et description
1

MenuItem add(MenuItem mi)

Ajoute l'élément de menu spécifié à ce menu.

2

void add(String label)

Ajoute un élément avec l'étiquette spécifiée à ce menu.

3

void addNotify()

Crée le pair du menu.

4

void addSeparator()

Ajoute une ligne de séparation, ou un hypen, au menu à la position actuelle.

5

int countItems()

Obsolète. À partir de la version 1.1 de JDK, remplacé par getItemCount ().

6

AccessibleContext getAccessibleContext()

Obtient le AccessibleContext associé à ce Menu.

sept

MenuItem getItem(int index)

Obtient l'élément situé à l'index spécifié de ce menu.

8

int getItemCount()

Obtenez le nombre d'éléments dans ce menu.

9

void insert(MenuItem menuitem, int index)

Insère un élément de menu dans ce menu à la position spécifiée.

dix

void insert(String label, int index)

Insère un élément de menu avec l'étiquette spécifiée dans ce menu à la position spécifiée.

11

void insertSeparator(int index)

Insère un séparateur à la position spécifiée.

12

boolean isTearOff()

Indique si ce menu est un menu détachable.

13

String paramString()

Renvoie une chaîne représentant l'état de ce menu.

14

void remove(int index)

Supprime l'élément de menu à l'index spécifié de ce menu.

15

void remove(MenuComponent item)

Supprime l'élément de menu spécifié de ce menu.

16

void removeAll()

Supprime tous les éléments de ce menu.

17

void removeNotify()

Supprime le pair du menu.

Méthodes héritées

Cette classe hérite des méthodes des classes suivantes:

  • java.awt.MenuItem

  • java.awt.MenuComponent

  • java.lang.Object

Exemple de menu

Créez le programme Java suivant en utilisant n'importe quel éditeur de votre choix dans say 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.");
      }    
   }
}

Compilez le programme à l'aide de l'invite de commande. Aller àD:/ > AWT et tapez la commande suivante.

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

Si aucune erreur ne survient, cela signifie que la compilation est réussie. Exécutez le programme en utilisant la commande suivante.

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

Vérifiez la sortie suivante. (Cliquez sur le menu Fichier.)