モジュール java.desktop
パッケージ java.awt

クラスMenuItem

すべての実装されたインタフェース:
Serializable, Accessible
直系の既知のサブクラス:
CheckboxMenuItem, Menu

public class MenuItem
extends MenuComponent
implements Accessible
メニュー内のすべての項目は、クラスMenuItemか、またはそのいずれかのサブクラスに属している必要があります。

デフォルトのMenuItemオブジェクトは、単純なラベルの付いたメニュー項目を具現化します。

メニュー・バーのこの画像は5つのメニュー項目を示しています。次の文は、この図について説明しています。
最初の2つの項目は、"Basic""Simple"というラベルの付いた、単純なメニュー項目です。
次の2つの項目はセパレータで、それ自体がラベル"-"付きで作成されるメニュー項目です。 次は、"Check"というラベルの付いたCheckboxMenuItemのインスタンスです。 最後のメニュー項目は"More Examples"というラベルの付いたサブメニューで、このサブメニューはMenuのインスタンスです。

メニュー項目が選択されると、AWTはメニュー項目にアクション・イベントを送ります。 イベントはActionEventのインスタンスであるため、processEventメソッドはそのイベントを検査してprocessActionEventに渡します。 後者のメソッドは、このメニュー項目によって生成されるアクション・イベントの通知を登録しているすべてのActionListenerオブジェクトにそのイベントを送ります。

ただし、Menuサブクラスはこの動作をオーバーライドして、そのサブ項目の1つが選択されるまでどのイベントもフレームに送りません。

関連項目:
直列化された形式
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型 クラス 説明
    protected class  MenuItem.AccessibleAWTMenuItem
    アクセシビリティのデフォルト・サポートを提供するために使用されるMenuItemの内部クラスです。

    クラス java.awt.MenuComponentで宣言されたネストされたクラス/インタフェース

    MenuComponent.AccessibleAWTMenuComponent
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ 説明
    MenuItem()
    空ラベルを持ち、キーボード・ショートカットのない新しいMenuItemを構築します。
    MenuItem​(String label)
    指定されたラベルを持ち、キーボード・ショートカットのない新しいMenuItemを構築します。
    MenuItem​(String label, MenuShortcut s)
    キーボード・ショートカットが関連付けられたメニュー項目を構築します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    void addActionListener​(ActionListener l)
    このメニュー項目からアクション・イベントを受け取るために、指定されたアクション・リスナーを追加します。
    void addNotify()
    メニュー項目のピアを作成します。
    void deleteShortcut()
    このメニュー項目に関連付けられたMenuShortcutオブジェクトをすべて削除します。
    void disable()
    非推奨。
    JDK Version 1.1以降は、setEnabled(boolean)に置き換えられています。
    protected void disableEvents​(long eventsToDisable)
    指定されたイベント・マスク・パラメータで定義するイベントについて、このメニュー項目への送信を不可にします。
    void enable()
    非推奨。
    JDK Version 1.1以降は、setEnabled(boolean)に置き換えられています。
    void enable​(boolean b)
    非推奨。
    JDK Version 1.1以降は、setEnabled(boolean)に置き換えられています。
    protected void enableEvents​(long eventsToEnable)
    指定されたイベント・マスク・パラメータで定義されるイベントについて、このメニュー項目への送信を可能にします。
    AccessibleContext getAccessibleContext()
    このMenuItemに関連付けられたAccessibleContextを取得します。
    String getActionCommand()
    このメニュー項目によってトリガーされるアクション・イベントのコマンド名を返します。
    ActionListener[] getActionListeners()
    このメニュー項目に登録されたすべてのアクション・リスナーの配列を返します。
    String getLabel()
    このメニュー項目のラベルを返します。
    <T extends EventListener>
    T[]
    getListeners​(Class<T> listenerType)
    このMenuItemFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。
    MenuShortcut getShortcut()
    このメニュー項目に関連付けられたMenuShortcutオブジェクトを取得します。
    boolean isEnabled()
    このメニュー項目が使用可能になっているかどうかを判定します。
    String paramString()
    このMenuItemの状態を表す文字列を返します。
    protected void processActionEvent​(ActionEvent e)
    このメニュー項目で発生するアクション・イベントを、登録されているActionListenerオブジェクトにディスパッチすることによって処理します。
    protected void processEvent​(AWTEvent e)
    このメニュー項目のイベントを処理します。
    void removeActionListener​(ActionListener l)
    以後このメニュー項目からアクション・イベントを受け取らないように、指定されたアクション・リスナーを削除します。
    void setActionCommand​(String command)
    このメニュー項目でトリガーされるアクション・イベントのコマンド名を設定します。
    void setEnabled​(boolean b)
    このメニュー項目を選択可能にするかどうかを設定します。
    void setLabel​(String label)
    このメニュー項目のラベルを指定されたラベルに設定します。
    void setShortcut​(MenuShortcut s)
    このメニュー項目に関連付けられたMenuShortcutオブジェクトを設定します。

    クラス java.awt.MenuComponentで宣言されたメソッド

    dispatchEvent, getFont, getName, getParent, getTreeLock, postEvent, removeNotify, setFont, setName, toString

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • コンストラクタの詳細

    • MenuItem

      public MenuItem() throws HeadlessException
      空ラベルを持ち、キーボード・ショートカットのない新しいMenuItemを構築します。
      例外:
      HeadlessException - GraphicsEnvironment.isHeadless()がtrueを返した場合。
      導入されたバージョン:
      1.1
      関連項目:
      GraphicsEnvironment.isHeadless()
    • MenuItem

      public MenuItem​(String label) throws HeadlessException
      指定されたラベルを持ち、キーボード・ショートカットのない新しいMenuItemを構築します。 ただし、ラベルでの"-"の使用は、メニュー項目間のセパレータを示すために予約されます。 デフォルトでは、セパレータを除くすべてのメニュー項目が使用可能です。
      パラメータ:
      label - このメニュー項目のラベル。
      例外:
      HeadlessException - GraphicsEnvironment.isHeadless()がtrueを返した場合。
      導入されたバージョン:
      1.0
      関連項目:
      GraphicsEnvironment.isHeadless()
    • MenuItem

      public MenuItem​(String label, MenuShortcut s) throws HeadlessException
      キーボード・ショートカットが関連付けられたメニュー項目を構築します。 ただし、ラベルでの"-"の使用は、メニュー項目間のセパレータを示すために予約されます。 デフォルトでは、セパレータを除くすべてのメニュー項目が使用可能です。
      パラメータ:
      label - このメニュー項目のラベル。
      s - このメニュー項目に関連したMenuShortcutのインスタンス。
      例外:
      HeadlessException - GraphicsEnvironment.isHeadless()がtrueを返した場合。
      導入されたバージョン:
      1.1
      関連項目:
      GraphicsEnvironment.isHeadless()
  • メソッドの詳細

    • addNotify

      public void addNotify()
      メニュー項目のピアを作成します。 ピアを使用すると、ピアの機能性を変えずに、メニュー項目の外観を変更することができます。
    • getLabel

      public String getLabel()
      このメニュー項目のラベルを返します。
      戻り値:
      このメニュー項目のラベル。このメニュー項目にラベルがない場合はnull
      導入されたバージョン:
      1.0
      関連項目:
      setLabel(java.lang.String)
    • setLabel

      public void setLabel​(String label)
      このメニュー項目のラベルを指定されたラベルに設定します。
      パラメータ:
      label - 新しいラベル。ラベルがない場合はnull
      導入されたバージョン:
      1.0
      関連項目:
      getLabel()
    • isEnabled

      public boolean isEnabled()
      このメニュー項目が使用可能になっているかどうかを判定します。
      戻り値:
      アイテムが有効な場合はtrue;そうでなければfalse
      導入されたバージョン:
      1.0
      関連項目:
      setEnabled(boolean)
    • setEnabled

      public void setEnabled​(boolean b)
      このメニュー項目を選択可能にするかどうかを設定します。
      パラメータ:
      b - trueの場合はこのメニュー項目を使用可能にし、falseの場合は使用不可にする。
      導入されたバージョン:
      1.1
      関連項目:
      isEnabled()
    • enable

      @Deprecated public void enable()
      非推奨。
      JDK Version 1.1以降は、setEnabled(boolean)に置き換えられています。
    • enable

      @Deprecatedpublic void enable​(boolean b)
      非推奨。
      JDK Version 1.1以降は、setEnabled(boolean)に置き換えられています。
      このメニュー項目を選択可能にするかどうかを設定します。
      パラメータ:
      b - trueの場合、このメニュー・アイテムを有効にします; それ以外の場合は無効にします
    • disable

      @Deprecated public void disable()
      非推奨。
      JDK Version 1.1以降は、setEnabled(boolean)に置き換えられています。
    • getShortcut

      public MenuShortcut getShortcut()
      このメニュー項目に関連付けられたMenuShortcutオブジェクトを取得します。
      戻り値:
      このメニュー項目に関連したメニュー・ショートカット。何も指定されていない場合はnull
      導入されたバージョン:
      1.1
      関連項目:
      setShortcut(java.awt.MenuShortcut)
    • setShortcut

      public void setShortcut​(MenuShortcut s)
      このメニュー項目に関連付けられたMenuShortcutオブジェクトを設定します。 メニュー・ショートカットがすでにこのメニュー項目に関連した場合は、置き換えられます。
      パラメータ:
      s - このメニュー項目に関連付けられたメニュー・ショートカット。
      導入されたバージョン:
      1.1
      関連項目:
      getShortcut()
    • deleteShortcut

      public void deleteShortcut()
      このメニュー項目に関連付けられたMenuShortcutオブジェクトをすべて削除します。
      導入されたバージョン:
      1.1
    • enableEvents

      protected final void enableEvents​(long eventsToEnable)
      指定されたイベント・マスク・パラメータで定義されるイベントについて、このメニュー項目への送信を可能にします。

      イベント型は、その型のリスナーがそのメニュー項目に追加されると、自動的に使用可能になります。このメソッドを呼び出す必要があるのは、MenuItemのサブクラスが、リスナーが登録されているかどうかにかかわらず指定のイベント型をprocessEventに送りたい場合だけです。

      パラメータ:
      eventsToEnable - イベント・タイプを定義するイベント・マスク
      導入されたバージョン:
      1.1
      関連項目:
      processEvent(java.awt.AWTEvent), disableEvents(long), Component.enableEvents(long)
    • disableEvents

      protected final void disableEvents​(long eventsToDisable)
      指定されたイベント・マスク・パラメータで定義するイベントについて、このメニュー項目への送信を不可にします。
      パラメータ:
      eventsToDisable - イベント・タイプを定義するイベント・マスク
      導入されたバージョン:
      1.1
      関連項目:
      processEvent(java.awt.AWTEvent), enableEvents(long), Component.disableEvents(long)
    • setActionCommand

      public void setActionCommand​(String command)
      このメニュー項目でトリガーされるアクション・イベントのコマンド名を設定します。

      デフォルトでは、アクション・コマンドはメニュー項目のラベルに設定されます。

      パラメータ:
      command - このメニュー項目用に設定されるアクション・コマンド。
      導入されたバージョン:
      1.1
      関連項目:
      getActionCommand()
    • getActionCommand

      public String getActionCommand()
      このメニュー項目によってトリガーされるアクション・イベントのコマンド名を返します。
      戻り値:
      アクション・コマンド名
      導入されたバージョン:
      1.1
      関連項目:
      setActionCommand(java.lang.String)
    • addActionListener

      public void addActionListener​(ActionListener l)
      このメニュー項目からアクション・イベントを受け取るために、指定されたアクション・リスナーを追加します。 lがnullの場合、例外はスローされず、処理も実行されません。

      AWTスレッド・モデルの詳細は、「AWTのスレッドの問題」を参照してください。

      パラメータ:
      l - アクション・リスナー。
      導入されたバージョン:
      1.1
      関連項目:
      removeActionListener(java.awt.event.ActionListener), getActionListeners(), ActionEvent, ActionListener
    • removeActionListener

      public void removeActionListener​(ActionListener l)
      以後このメニュー項目からアクション・イベントを受け取らないように、指定されたアクション・リスナーを削除します。 lがnullの場合、例外はスローされず、処理も実行されません。

      AWTスレッド・モデルの詳細は、「AWTのスレッドの問題」を参照してください。

      パラメータ:
      l - アクション・リスナー。
      導入されたバージョン:
      1.1
      関連項目:
      addActionListener(java.awt.event.ActionListener), getActionListeners(), ActionEvent, ActionListener
    • getActionListeners

      public ActionListener[] getActionListeners()
      このメニュー項目に登録されたすべてのアクション・リスナーの配列を返します。
      戻り値:
      このメニュー項目のすべてのActionListener。アクション・リスナーが現在登録されていない場合は空の配列
      導入されたバージョン:
      1.4
      関連項目:
      addActionListener(java.awt.event.ActionListener), removeActionListener(java.awt.event.ActionListener), ActionEvent, ActionListener
    • getListeners

      public <T extends EventListener> T[] getListeners​(Class<T> listenerType)
      このMenuItemFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。 FooListenerは、addFooListenerメソッドを使用して登録されます。

      FooListener.classなどのクラス・リテラルを使用してlistenerType引数を指定できます。 たとえば、次のコードを使用して、MenuItem mのアクション・リスナーを照会できます。

      ActionListener[] als = (ActionListener[])(m.getListeners(ActionListener.class));
      このようなリスナーがない場合は空の配列を返します。

      型パラメータ:
      T - リスナーの型
      パラメータ:
      listenerType - 要求されるリスナーの型。次の下位インタフェースを指定: java.util.EventListener
      戻り値:
      このメニュー項目にFooListenerとして登録されているすべてのオブジェクトの配列。またはそのようなリスナーが追加されていない場合は空の配列
      例外:
      ClassCastException - listenerTypeで、java.util.EventListenerを実装するクラスまたはインタフェースが指定されなかった場合
      導入されたバージョン:
      1.3
      関連項目:
      getActionListeners()
    • processEvent

      protected void processEvent​(AWTEvent e)
      このメニュー項目のイベントを処理します。 イベントがActionEventのインスタンスである場合は、MenuItemで定義されている別のメソッドprocessActionEventを呼び出します。

      現在、メニュー項目はアクション・イベントだけをサポートしています。

      イベント・パラメータがnullである場合は、動作が未指定のため、例外が発生する可能性があります。

      オーバーライド:
      processEvent、クラス: MenuComponent
      パラメータ:
      e - イベント
      導入されたバージョン:
      1.1
      関連項目:
      processActionEvent(java.awt.event.ActionEvent)
    • processActionEvent

      protected void processActionEvent​(ActionEvent e)
      このメニュー項目で発生するアクション・イベントを、登録されているActionListenerオブジェクトにディスパッチすることによって処理します。 このコンポーネントに対してアクション・イベントが使用可能でないかぎり、このメソッドは呼び出されません。 アクション・イベントは、次のどちらかの場合に使用可能になります。
      • ActionListenerオブジェクトがaddActionListenerによって登録されている。
      • enableEventsによってアクション・イベントが使用可能になっている。

      イベント・パラメータがnullである場合は、動作が未指定のため、例外が発生する可能性があります。

      パラメータ:
      e - アクション・イベント
      導入されたバージョン:
      1.1
      関連項目:
      ActionEvent, ActionListener, enableEvents(long)
    • paramString

      public String paramString()
      このMenuItemの状態を表す文字列を返します。 このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なる可能性があります。 返される文字列は空でもかまいませんが、nullにはできません。
      オーバーライド:
      paramString、クラス: MenuComponent
      戻り値:
      このメニュー項目のパラメータ文字列
    • getAccessibleContext

      public AccessibleContext getAccessibleContext()
      このMenuItemに関連付けられたAccessibleContextを取得します。 メニュー・バーの場合、AccessibleContextはAccessibleAWTMenuItemの形式を取ります。 必要に応じて新規のAccessibleAWTMenuItemインスタンスが作成されます。
      定義:
      getAccessibleContext、インタフェース: Accessible
      オーバーライド:
      getAccessibleContext、クラス: MenuComponent
      戻り値:
      このMenuItemのAccessibleContextとして機能するAccessibleAWTMenuItem
      導入されたバージョン:
      1.3