モジュール java.desktop
パッケージ javax.swing

クラスJMenuItem

すべての実装されたインタフェース:
ImageObserver, ItemSelectable, MenuContainer, Serializable, Accessible, MenuElement, SwingConstants
直系の既知のサブクラス:
JCheckBoxMenuItem, JMenu, JRadioButtonMenuItem

@JavaBean(defaultProperty="UIClassID", description="An item which can be selected in a menu.") public class JMenuItem extends AbstractButton implements Accessible, MenuElement
メニューの項目の実装です。 メニュー項目は実質的にはリストに置かれているボタンです。 ユーザーが「ボタン」を選択すると、メニュー項目に対応するアクションが実行されます。 機能はJPopupMenuが保持するJMenuItemで正確に実行されます。

メニュー項目は構成可能であり、Actionを使用してある程度制御できます。 メニュー項目でActionを使用することは、メニュー項目を直接構成するのと比べて多くの利点があります。 詳細は「ActionをサポートするSwingコンポーネント」を参照してください。さらに、Java チュートリアルActionsの使用方法のセクションに詳細が説明されています。

詳細と使用例については、『The Java Tutorial』の「How to Use Menus」を参照してください。

警告: Swingはスレッドに対して安全ではありません。 詳細は、「Swing's Threading Policy」を参照してください。

警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。

導入されたバージョン:
1.2
関連項目:
  • コンストラクタの詳細

    • JMenuItem

      public JMenuItem()
      テキストおよびアイコンを指定しないでJMenuItemを作成します。
    • JMenuItem

      public JMenuItem(Icon icon)
      指定されたアイコンでJMenuItemを作成します。
      パラメータ:
      icon - JMenuItemのアイコン
    • JMenuItem

      public JMenuItem(String text)
      指定されたテキストでJMenuItemを作成します。
      パラメータ:
      text - JMenuItemのテキスト
    • JMenuItem

      public JMenuItem(Action a)
      指定されたActionからプロパティを取得するメニュー項目を作成します。
      パラメータ:
      a - JMenuItemのアクション
      導入されたバージョン:
      1.3
    • JMenuItem

      public JMenuItem(String text, Icon icon)
      指定されたテキストおよびアイコンでJMenuItemを作成します。
      パラメータ:
      text - JMenuItemのテキスト
      icon - JMenuItemのアイコン
    • JMenuItem

      public JMenuItem(String text, int mnemonic)
      指定されたテキストおよびキーボード・ニーモニックでJMenuItemを作成します。
      パラメータ:
      text - JMenuItemのテキスト
      mnemonic - JMenuItemのキーボード・ニーモニック
  • メソッドの詳細

    • setModel

      public void setModel(ButtonModel newModel)
      このボタンが表すモデルを設定します。
      オーバーライド:
      setModel 、クラス:  AbstractButton
      パラメータ:
      newModel - 新しいButtonModel
      関連項目:
    • init

      protected void init(String text, Icon icon)
      指定されたテキストおよびアイコンでメニュー項目を初期化します。
      オーバーライド:
      init 、クラス:  AbstractButton
      パラメータ:
      text - JMenuItemのテキスト
      icon - JMenuItemのアイコン
    • setUI

      @BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the LookAndFeel.") public void setUI(MenuItemUI ui)
      このコンポーネントをレンダリングするルック・アンド・フィールオブジェクトを設定します。
      パラメータ:
      ui - JMenuItemUI L&Fオブジェクト
      関連項目:
    • updateUI

      public void updateUI()
      現在のルック・アンド・フィールからの値を持つUIプロパティをリセットします。
      オーバーライド:
      updateUI 、クラス:  AbstractButton
      関連項目:
    • getUIClassID

      @BeanProperty(bound=false) public String getUIClassID()
      L&Fクラスの名前の構築に使用された接尾辞を返します。このクラスは、このコンポーネントをレンダリングするのに使用されます。
      オーバーライド:
      getUIClassID 、クラス:  JComponent
      戻り値:
      文字列「MenuItemUI」
      関連項目:
    • setArmed

      @BeanProperty(bound=false, hidden=true, description="Mouse release will fire an action event") public void setArmed(boolean b)
      メニュー項目を「作動準備が整っている」ものとして設定します。 この項目上でマウス・ボタンが離されると、メニューのアクション・イベントがトリガーされます。 それ以外の場所でマウス・ボタンが離されると、イベントはトリガーされずメニュー項目の作動準備は解除されます。
      パラメータ:
      b - メニュー項目の作動準備を整え、選択可能にする場合はtrue
    • isArmed

      public boolean isArmed()
      メニュー項目の「作動準備が整っている」かどうかを返します。
      戻り値:
      メニュー項目の作動準備が整っていて選択可能な場合はtrue
      関連項目:
    • setEnabled

      @BeanProperty(preferred=true, description="The enabled state of the component.") public void setEnabled(boolean b)
      メニュー項目を有効または無効にします。
      オーバーライド:
      setEnabled 、クラス:  AbstractButton
      パラメータ:
      b - 項目を有効にする場合はtrue
      関連項目:
    • setAccelerator

      @BeanProperty(preferred=true, description="The keystroke combination which will invoke the JMenuItem\'s actionlisteners without navigating the menu hierarchy") public void setAccelerator(KeyStroke keyStroke)
      メニュー階層を移動することなくメニュー項目のアクション・リスナーを呼び出すキーの組み合わせを設定します。 適切なアクションをインストールするのはUIの役割です。 キーボード・アクセラレータが入力されると、メニューが現在表示されているかどうかを処理します。
      パラメータ:
      keyStroke - アクセラレータとして機能するKeyStroke
    • getAccelerator

      public KeyStroke getAccelerator()
      メニュー項目のアクセラレータとして機能するKeyStrokeを返します。
      戻り値:
      アクセラレータ・キーを識別するKeyStrokeオブジェクト
    • configurePropertiesFromAction

      protected void configurePropertiesFromAction(Action a)
      指定されたActionのプロパティに一致するように、このボタンにプロパティを設定します。 これによって設定されるプロパティの詳細は、「ActionをサポートするSwingコンポーネント」を参照してください。
      オーバーライド:
      configurePropertiesFromAction 、クラス:  AbstractButton
      パラメータ:
      a - プロパティを取得するAction、またはnull
      導入されたバージョン:
      1.3
      関連項目:
    • actionPropertyChanged

      protected void actionPropertyChanged(Action action, String propertyName)
      関連アクションのプロパティの変更に応じてボタンの状態を更新します。 このメソッドは、createActionPropertyChangeListenerから返されるPropertyChangeListenerから呼び出されます。 サブクラスは、通常、これを呼び出す必要はありません。 追加のActionプロパティをサポートするサブクラスは、これとconfigurePropertiesFromActionをオーバーライドする必要があります。

      このメソッドによって設定されるプロパティのリストは、「ActionをサポートするSwingコンポーネント」の表を参照してください。

      オーバーライド:
      actionPropertyChanged 、クラス:  AbstractButton
      パラメータ:
      action - このボタンに関連付けられたAction
      propertyName - 変更されたプロパティの名前
      導入されたバージョン:
      1.6
      関連項目:
    • processMouseEvent

      public void processMouseEvent(MouseEvent e, MenuElement[] path, MenuSelectionManager manager)
      MenuSelectionManagerから転送されるマウス・イベントを処理します。必要に応じてMenuSelectionManagerのAPIを使用して、メニュー選択を変更します。

      ノート: イベントをサブコンポーネントに転送する必要はありません。 MenuSelectionManagerが自動的に行います。

      定義:
      processMouseEvent 、インタフェース: MenuElement
      パラメータ:
      e - aMouseEvent
      path - MenuElementパス配列
      manager - MenuSelectionManager
    • processKeyEvent

      public void processKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)
      MenuSelectionManagerから転送されるキー・イベントを処理し、必要に応じてMenuSelectionManagerのAPIを使用して、メニュー選択を変更します。

      ノート: イベントをサブコンポーネントに転送する必要はありません。 MenuSelectionManagerが自動的に行います。

      定義:
      processKeyEvent 、インタフェース: MenuElement
      パラメータ:
      e - aKeyEvent
      path - MenuElementパス配列
      manager - MenuSelectionManager
    • processMenuDragMouseEvent

      public void processMenuDragMouseEvent(MenuDragMouseEvent e)
      メニューでのマウス・ドラッグを処理します。
      パラメータ:
      e - MenuDragMouseEventオブジェクト
    • processMenuKeyEvent

      public void processMenuKeyEvent(MenuKeyEvent e)
      メニューのキー・ストロークを処理します。
      パラメータ:
      e - MenuKeyEventオブジェクト
    • fireMenuDragMouseEntered

      protected void fireMenuDragMouseEntered(MenuDragMouseEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuMouseDragEvent
      関連項目:
    • fireMenuDragMouseExited

      protected void fireMenuDragMouseExited(MenuDragMouseEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuDragMouseEvent
      関連項目:
    • fireMenuDragMouseDragged

      protected void fireMenuDragMouseDragged(MenuDragMouseEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuDragMouseEvent
      関連項目:
    • fireMenuDragMouseReleased

      protected void fireMenuDragMouseReleased(MenuDragMouseEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuDragMouseEvent
      関連項目:
    • fireMenuKeyPressed

      protected void fireMenuKeyPressed(MenuKeyEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuKeyEvent
      関連項目:
    • fireMenuKeyReleased

      protected void fireMenuKeyReleased(MenuKeyEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuKeyEvent
      関連項目:
    • fireMenuKeyTyped

      protected void fireMenuKeyTyped(MenuKeyEvent event)
      このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
      パラメータ:
      event - aMenuKeyEvent
      関連項目:
    • getSubElements

      @BeanProperty(bound=false) public MenuElement[] getSubElements()
      該当のメニュー・コンポーネントのサブメニュー・コンポーネントを保持する配列を返します。
      定義:
      getSubElements 、インタフェース: MenuElement
      戻り値:
      MenuElementの配列
    • getComponent

      public Component getComponent()
      このオブジェクトをペイントするのに使われるjava.awt.Componentを返します。 返されるコンポーネントを使用して、イベントの変換およびイベントがメニュー・コンポーネント内にあるかどうかの判定を行います。
      定義:
      getComponent 、インタフェース: MenuElement
      戻り値:
      このメニュー項目をペイントするComponent
    • addMenuDragMouseListener

      public void addMenuDragMouseListener(MenuDragMouseListener l)
      メニュー項目にMenuDragMouseListenerを追加します。
      パラメータ:
      l - 追加されるMenuDragMouseListener
    • removeMenuDragMouseListener

      public void removeMenuDragMouseListener(MenuDragMouseListener l)
      メニュー項目からMenuDragMouseListenerを削除します。
      パラメータ:
      l - 削除するMenuDragMouseListener
    • getMenuDragMouseListeners

      @BeanProperty(bound=false) public MenuDragMouseListener[] getMenuDragMouseListeners()
      addMenuDragMouseListener()を使用してこのJMenuItemに追加されたすべてのMenuDragMouseListenerの配列を返します。
      戻り値:
      追加されたすべてのMenuDragMouseListener。リスナーが追加されていない場合は空の配列
      導入されたバージョン:
      1.4
    • addMenuKeyListener

      public void addMenuKeyListener(MenuKeyListener l)
      メニュー項目にMenuKeyListenerを追加します。
      パラメータ:
      l - 追加されるMenuKeyListener
    • removeMenuKeyListener

      public void removeMenuKeyListener(MenuKeyListener l)
      メニュー項目からMenuKeyListenerを削除します。
      パラメータ:
      l - 削除するMenuKeyListener
    • getMenuKeyListeners

      @BeanProperty(bound=false) public MenuKeyListener[] getMenuKeyListeners()
      addMenuKeyListener()を使用してこのJMenuItemに追加されたすべてのMenuKeyListenerの配列を返します。
      戻り値:
      追加されたすべてのMenuKeyListener。リスナーが追加されていない場合は空の配列
      導入されたバージョン:
      1.4
    • paramString

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

      @BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
      このJMenuItemに関連付けられたAccessibleContextを返します。 JMenuItemの場合、AccessibleContextAccessibleJMenuItemの形式を取ります。 必要に応じて新規のAccessibleJMenuItmeインスタンスが作成されます。
      定義:
      getAccessibleContext、インタフェース: Accessible
      オーバーライド:
      getAccessibleContext、クラス: Component
      戻り値:
      このJMenuItemAccessibleContextとして機能するAccessibleJMenuItem