Awt-menuitem-control

提供:Dev Guides
移動先:案内検索

AWT MenuItemクラス

前書き

MenuBarクラスは、メニュー内の実際のアイテムを表します。 メニュー内のすべてのアイテムは、クラスMenuItemまたはそのサブクラスの1つから派生する必要があります。 デフォルトでは、単純なラベル付きメニュー項目が組み込まれています。

クラス宣言

以下は、 java.awt.MenuItem クラスの宣言です。

public class MenuItem
   extends MenuComponent
      implements Accessible

クラスコンストラクター

S.N. Constructor & Description
1

MenuItem()

空のラベルとキーボードショートカットのない新しいMenuItemを構築します。

2

MenuItem(String label)

指定されたラベルとキーボードショートカットなしで新しいMenuItemを構築します。

3

MenuItem(String label, MenuShortcut s)

キーボードショートカットが関連付けられたメニュー項目を作成します。

クラスメソッド

S.N. Method & Description
1

void addActionListener(ActionListener l)

このメニュー項目からアクションイベントを受け取るために、指定されたアクションリスナーを追加します。

2

void addNotify()

メニュー項目のピアを作成します。

3

void deleteShortcut()

このメニュー項目に関連付けられているMenuShortcutオブジェクトを削除します。

4

void disable()

廃止予定です。 JDKバージョン1.1以降、setEnabled(boolean)に置き換えられました。

5

protected void disableEvents(long eventsToDisable)

指定されたイベントマスクパラメーターで定義されたイベントのこのメニュー項目へのイベント配信を無効にします。

6

void enable()

廃止予定です。 JDKバージョン1.1以降、setEnabled(boolean)に置き換えられました。

7

void enable(boolean b)

廃止予定です。 JDKバージョン1.1以降、setEnabled(boolean)に置き換えられました。

8

protected void enableEvents(long eventsToEnable)

指定されたイベントマスクパラメーターによって定義されるイベントのこのメニュー項目へのイベント配信を有効にします。

9

AccessibleContext getAccessibleContext()

このMenuItemに関連付けられているAccessibleContextを取得します。

10

String getActionCommand()

このメニュー項目によって発生するアクションイベントのコマンド名を取得します。

11

ActionListener[] getActionListeners()

このメニュー項目に登録されているすべてのアクションリスナーの配列を返します。

12

String getLabel()

このメニュー項目のラベルを取得します。

13

EventListener[] getListeners(Class listenerType)

このMenuItemにFooListenersとして現在登録されているすべてのオブジェクトの配列を返します。

14

MenuShortcut getShortcut()

このメニュー項目に関連付けられたMenuShortcutオブジェクトを取得します。

15

boolean isEnabled()

このメニュー項目が有効かどうかを確認します。

16

String paramString()

このMenuItemの状態を表す文字列を返します。

17

protected void processActionEvent(ActionEvent e)

登録されたActionListenerオブジェクトにディスパッチすることにより、このメニュー項目で発生するアクションイベントを処理します。

18

protected void processEvent(AWTEvent e)

このメニュー項目のイベントを処理します。

19

void removeActionListener(ActionListener l)

このメニュー項目からアクションイベントを受け取らないように、指定されたアクションリスナーを削除します。

20

void setActionCommand(String command)

このメニュー項目によって起動されるアクションイベントのコマンド名を設定します。

21

void setEnabled(boolean b)

このメニュー項目を選択できるかどうかを設定します。

22

void setLabel(String label)

このメニュー項目のラベルを指定されたラベルに設定します。

23

void setShortcut(MenuShortcut s)

このメニュー項目に関連付けられているMenuShortcutオブジェクトを設定します。

継承されたメソッド

このクラスは、次のクラスからメソッドを継承します。

  • java.awt.MenuComponent
  • java.lang.Object

MenuItemの例

たとえば、 D:/> AWT> com> finddevguides> gui> の任意のエディターを使用して、次のJavaプログラムを作成します。

AWTMenuDemo.java

package com.finddevguides.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.");
      }
   }
}

コマンドプロンプトを使用してプログラムをコンパイルします。 D:/> AWT に移動し、次のコマンドを入力します。

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

エラーが発生しない場合は、コンパイルが成功したことを意味します。 次のコマンドを使用してプログラムを実行します。

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

次の出力を確認します。 ([ファイル]メニューをクリックします。 メニュー項目を選択します。)

AWT MenuItem