|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.awt.Component | +--java.awt.Container | +--javax.swing.JComponent | +--javax.swing.AbstractButton | +--javax.swing.JMenuItem | +--javax.swing.JMenu
メニューの実装であり、ユーザが JMenuBar
で項目を選択すると表示される JMenuItem
を保持するポップアップウィンドウです。JMenuItem
のほかに、JMenu
には JSeparator
も含めることができます。
メニューというのは実質的には JPopupMenu
が割り当てられたボタンのことです。「ボタン」が押されると JPopupMenu
が表示されます。「ボタン」が JMenuBar
上にあれば、そのメニューはトップレベルウィンドウです。「ボタン」が別のメニュー項目であれば JPopupMenu
は「プルライト」メニューです。
メニューの使用に関する詳細と例については、「The Java Tutorial」の「How to Use Menus」を参照してください。標準の Look & Feel (L&F) 表現でこのコンポーネントが使うキーボードのキーについては、「JMenu
のキー割り当て」を参照してください。
警告:
このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。1.4 では、すべての JavaBeansTM の長期間の運用に対するサポートが java.beans
パッケージに追加されました。XMLEncoder
を参照してください。
JMenuItem
,
JSeparator
,
JMenuBar
,
JPopupMenu
入れ子クラスの概要 | |
protected class |
JMenu.AccessibleJMenu
このクラスは JMenu クラス用のユーザ補助機能のサポートを実装しています。 |
protected class |
JMenu.WinListener
ポップアップウィンドウが閉じられるのを監視するリスナークラスです。 |
クラス javax.swing.JMenuItem から継承した入れ子クラス |
|
クラス javax.swing.AbstractButton から継承した入れ子クラス |
AbstractButton.ButtonChangeListener |
クラス javax.swing.JComponent から継承した入れ子クラス |
|
クラス java.awt.Container から継承した入れ子クラス |
|
クラス java.awt.Component から継承した入れ子クラス |
Component.BltBufferStrategy, Component.FlipBufferStrategy |
フィールドの概要 | |
protected JMenu.WinListener |
popupListener
ポップアップ用の、ウィンドウを閉じるためのリスナーです。 |
クラス javax.swing.JComponent から継承したフィールド |
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
クラス java.awt.Component から継承したフィールド |
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
インタフェース javax.swing.SwingConstants から継承したフィールド |
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST |
インタフェース java.awt.image.ImageObserver から継承したフィールド |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
コンストラクタの概要 | |
JMenu()
テキストのない新しい JMenu を作成します。 |
|
JMenu(Action a)
指定された Action からプロパティを取得するメニューを作成します。 |
|
JMenu(String s)
指定された文字列をテキストとして持つ新しい JMenu を作成します。 |
|
JMenu(String s,
boolean b)
指定された文字列をテキストとして持ち、ティアオフメニューかどうかを指定された、新しい JMenu を作成します。 |
メソッドの概要 | |
JMenuItem |
add(Action a)
指定された Action オブジェクトに属する新しいメニュー項目を作成し、それをこのメニューの末尾に追加します。 |
Component |
add(Component c)
このメニューの最後にコンポーネントを追加します。 |
Component |
add(Component c,
int index)
指定されたコンポーネントをこのコンテナの指定された位置に追加します。 |
JMenuItem |
add(JMenuItem menuItem)
このメニューの最後にメニュー項目を追加します。 |
JMenuItem |
add(String s)
指定されたテキストを持つ新しいメニュー項目を作成して、このメニューの末尾に追加します。 |
void |
addMenuListener(MenuListener l)
メニューイベントのリスナーを追加します。 |
void |
addSeparator()
メニューの最後に新しいセパレータを追加します。 |
void |
applyComponentOrientation(ComponentOrientation o)
このメニューおよびこのメニューに含まれるすべてのコンポーネントの ComponentOrientation プロパティを設定します。 |
protected void |
configurePropertiesFromAction(Action a)
Action インスタンスの値に従って ActionEvent ソースのプロパティを設定するファクトリメソッドです。 |
protected PropertyChangeListener |
createActionChangeListener(JMenuItem b)
Action に対する変更が発生した場合にコントロールを更新する、適切に設定された PropertyChangeListener を返します。 |
protected JMenuItem |
createActionComponent(Action a)
JMenu に追加される Action の JMenuItem を作成するファクトリメソッドです。 |
protected JMenu.WinListener |
createWinListener(JPopupMenu p)
ポップアップのウィンドウを閉じるリスナーを作成します。 |
void |
doClick(int pressTime)
「クリック」をプログラム上で実行します。 |
protected void |
fireMenuCanceled()
通知の配信対象を、指定されたイベントタイプで登録したすべてのリスナーに通知します。 |
protected void |
fireMenuDeselected()
通知の配信対象を、指定されたイベントタイプで登録したすべてのリスナーに通知します。 |
protected void |
fireMenuSelected()
通知の配信対象を、指定されたイベントタイプで登録したすべてのリスナーに通知します。 |
AccessibleContext |
getAccessibleContext()
この JMenu に関連した AccessibleContext を返します。 |
Component |
getComponent()
この MenuElement をペイントするのに使われる java.awt.Component を返します。 |
int |
getDelay()
サブメニューを表示または非表示にするまでの、推奨される遅延時間をミリ秒単位で返します。 |
JMenuItem |
getItem(int pos)
指定された位置の JMenuItem を返します。 |
int |
getItemCount()
セパレータを含めたメニュー項目数を返します。 |
Component |
getMenuComponent(int n)
n の位置にあるコンポーネントを返します。 |
int |
getMenuComponentCount()
メニューのコンポーネント数を返します。 |
Component[] |
getMenuComponents()
メニューのサブコンポーネントの Component の配列を返します。 |
MenuListener[] |
getMenuListeners()
この JMenu に addMenuListener() で追加されたすべての MenuListener の配列を返します。 |
JPopupMenu |
getPopupMenu()
このメニューに関連したポップアップメニューを返します。 |
protected Point |
getPopupMenuOrigin()
JMenu のポップアップメニューの原点を計算します。 |
MenuElement[] |
getSubElements()
このメニューコンポーネントのサブメニューを格納する MenuElement の配列を返します。 |
String |
getUIClassID()
このコンポーネントを描画する L&F クラスの名前を返します。 |
JMenuItem |
insert(Action a,
int pos)
指定された Action オブジェクトに属する新しいメニュー項目を、指定された位置に挿入します。 |
JMenuItem |
insert(JMenuItem mi,
int pos)
指定された JMenuItem を指定された位置に挿入します。 |
void |
insert(String s,
int pos)
指定されたテキストを持つ新しいメニュー項目を、指定された位置に挿入します。 |
void |
insertSeparator(int index)
指定された位置にセパレータを挿入します。 |
boolean |
isMenuComponent(Component c)
指定されたコンポーネントがサブメニュー階層内にある場合に true を返します。 |
boolean |
isPopupMenuVisible()
メニューのポップアップウィンドウが可視の場合に true を返します。 |
boolean |
isSelected()
メニューが現在選択されている (強調表示されている) 場合に true を返します。 |
boolean |
isTearOff()
メニューがティアオフ可能な場合に true を返します。 |
boolean |
isTopLevelMenu()
メニューが「トップレベルメニュー」の場合に true を返します。 |
void |
menuSelectionChanged(boolean isIncluded)
このメニューをアクティブにするか、アクティブではなくするためにメニューバーの選択が変更されたときに、メッセージを送ります。 |
protected String |
paramString()
この JMenu の文字列表現を返します。 |
protected void |
processKeyEvent(KeyEvent evt)
ニーモニックやアクセラレータなどの、キーストロークイベントを処理します。 |
void |
remove(Component c)
このメニューからコンポーネント c を削除します。 |
void |
remove(int pos)
このメニューから、指定されたインデックスにあるメニュー項目を削除します。 |
void |
remove(JMenuItem item)
指定されたメニューをこのメニューから削除します。 |
void |
removeAll()
このメニューからメニュー項目をすべて削除します。 |
void |
removeMenuListener(MenuListener l)
メニューイベントのリスナーを削除します。 |
void |
setAccelerator(KeyStroke keyStroke)
setAccelerator は JMenu には定義されていません。 |
void |
setComponentOrientation(ComponentOrientation o)
このコンポーネント内の要素またはテキストを整列するために使用する、言語に依存する方向を設定します。 |
void |
setDelay(int d)
メニューの PopupMenu を表示または非表示にするまでの、推奨される遅延時間をミリ秒単位で返します。 |
void |
setMenuLocation(int x,
int y)
ポップアップコンポーネントの位置を設定します。 |
void |
setModel(ButtonModel newModel)
「メニューボタン」のデータモデルを設定します。 |
void |
setPopupMenuVisible(boolean b)
メニューのポップアップの可視性を設定します。 |
void |
setSelected(boolean b)
メニューの選択状態を設定します。 |
void |
updateUI()
現在の Look & Feel からの値を持つ UI プロパティをリセットします。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
インタフェース javax.swing.MenuElement から継承したメソッド |
processKeyEvent, processMouseEvent |
フィールドの詳細 |
protected JMenu.WinListener popupListener
JMenu.WinListener
コンストラクタの詳細 |
public JMenu()
JMenu
を作成します。
public JMenu(String s)
JMenu
を作成します。
s
- メニューラベルのテキストpublic JMenu(Action a)
Action
からプロパティを取得するメニューを作成します。
a
- Action
public JMenu(String s, boolean b)
JMenu
を作成します。
s
- メニューラベルのテキストb
- メニューがティアオフできるかどうか (まだ実装されていない)メソッドの詳細 |
public void updateUI()
JMenuItem
内の updateUI
JComponent.updateUI()
public String getUIClassID()
JMenuItem
内の getUIClassID
JComponent.getUIClassID()
,
UIDefaults.getUI(javax.swing.JComponent)
public void setModel(ButtonModel newModel)
AbstractButton
内の setModel
newModel
- ButtonModel
AbstractButton.getModel()
public boolean isSelected()
AbstractButton
内の isSelected
public void setSelected(boolean b)
AbstractButton
内の setSelected
b
- メニューを選択する (強調表示する) 場合は true、メニューを選択解除する場合は falsepublic boolean isPopupMenuVisible()
public void setPopupMenuVisible(boolean b)
b
- boolean 値。メニューを可視にする場合は true、隠す場合は falseprotected Point getPopupMenuOrigin()
JMenu
のポップアップメニューの原点を計算します。このメソッドは、ポップアップの正確な位置を調整するため、Menu.menuPopupOffsetX
、Menu.menuPopupOffsetY
、Menu.submenuPopupOffsetX
、および Menu.submenuPopupOffsetY
という名前の Look & Feel プロパティを使用します。
JMenu
のポップアップメニューの原点として使う、メニューの座標空間にある Point
public int getDelay()
delay
プロパティを監視するための独自のポリシーを決定できます。ほとんどの場合、トップレベルメニューの遅延、あるいはドラッグ中の遅延は監視されません。delay
のデフォルトは 0 です。このメソッドは Look & Feel コードのプロパティであり、さまざまな UI 実装の特質の管理に使われます。
delay
プロパティpublic void setDelay(int d)
PopupMenu
を表示または非表示にするまでの、推奨される遅延時間をミリ秒単位で返します。各 Look & Feel (L&F) は、遅延プロパティを監視するための独自のポリシーを決定できます。ほとんどの場合、トップレベルメニューの遅延、あるいはドラッグ中の遅延は監視されません。このメソッドは Look & Feel コードのプロパティであり、さまざまな UI 実装の特質を管理するのに使われます。
d
- 遅延のミリ秒数
IllegalArgumentException
- d
が 0 未満の場合public void setMenuLocation(int x, int y)
x
- ポップアップメニューの新しい位置の x 座標y
- ポップアップメニューの新しい位置の y 座標public JMenuItem add(JMenuItem menuItem)
menuItem
- 追加する JMenuItem
JMenuItem
public Component add(Component c)
Container
内の add
c
- 追加する Component
Component
Container.addImpl(java.awt.Component, java.lang.Object, int)
public Component add(Component c, int index)
index
が -1 の場合、コンポーネントは末尾に追加されます。
Container
内の add
c
- 追加する Component
index
- コンポーネントを挿入する位置
Component
remove(javax.swing.JMenuItem)
,
Container.add(Component, int)
public JMenuItem add(String s)
s
- 追加されるメニュー項目の文字列public JMenuItem add(Action a)
Action
オブジェクトに属する新しいメニュー項目を作成し、それをこのメニューの末尾に追加します。1.3 以降は、これはコンテナに Action
を追加するメソッドとしてはお勧めしません。代わりに、setAction
を使ってアクションを持つコントロールを設定し、そのコントロールを直接 Container
に追加することをお勧めします。
a
- 追加されるメニュー項目の Action
Action
protected JMenuItem createActionComponent(Action a)
JMenu
に追加される Action
の JMenuItem
を作成するファクトリメソッドです。1.3 以降は、このメソッドはお勧めしません。代わりに、setAction
を使ってアクションを持つコントロールを設定し、そのコントロールを直接 Container
に追加することをお勧めします。
a
- 追加されるメニュー項目の Action
Action
protected PropertyChangeListener createActionChangeListener(JMenuItem b)
Action
に対する変更が発生した場合にコントロールを更新する、適切に設定された PropertyChangeListener
を返します。1.3 以降は、これは Container
に Actions
を追加するメソッドとしてはお勧めしません。代わりに、setAction
を使ってアクションを持つコントロールを設定し、そのコントロールを直接 Container
に追加することをお勧めします。
public void addSeparator()
public void insert(String s, int pos)
s
- 追加するメニュー項目のテキストpos
- 新しいメニュー項目を追加する位置を指定する整数
IllegalArgumentException
- pos
の値が 0 より小さい場合public JMenuItem insert(JMenuItem mi, int pos)
JMenuItem
を指定された位置に挿入します。
mi
- 追加する JMenuItem
pos
- 新しい JMenuItem
を追加する位置を指定する整数
IllegalArgumentException
- pos
の値が 0 より小さい場合public JMenuItem insert(Action a, int pos)
Action
オブジェクトに属する新しいメニュー項目を、指定された位置に挿入します。
a
- 追加するメニュー項目の Action
オブジェクトpos
- 新しいメニュー項目を追加する位置を指定する整数
IllegalArgumentException
- pos
の値が 0 より小さい場合public void insertSeparator(int index)
index
- メニューセパレータを挿入する位置を指定する整数
IllegalArgumentException
- index
の値が 0 より小さい場合public JMenuItem getItem(int pos)
JMenuItem
を返します。pos
のコンポーネントがメニュー項目でない場合は、null
が返されます。このメソッドは AWT の互換性のために用意されています。
pos
- 位置を指定する整数
null
IllegalArgumentException
- pos
の値が 0 より小さい場合public int getItemCount()
getMenuComponentCount()
public boolean isTearOff()
Error
- 呼び出された場合。このメソッドはまだ実装されていないpublic void remove(JMenuItem item)
item
- メニューから削除する JMenuItem
public void remove(int pos)
Container
内の remove
pos
- 削除される項目の位置
IllegalArgumentException
- pos
の値が 0 より小さいか、pos
がメニュー項目の数より大きい場合Container.add(java.awt.Component)
public void remove(Component c)
c
を削除します。
Container
内の remove
c
- 削除されるコンポーネントContainer.add(java.awt.Component)
public void removeAll()
Container
内の removeAll
Container.add(java.awt.Component)
,
Container.remove(int)
public int getMenuComponentCount()
public Component getMenuComponent(int n)
n
の位置にあるコンポーネントを返します。
n
- 返されるコンポーネントの位置
null
public Component[] getMenuComponents()
Component
の配列を返します。セパレータを含め、ポップアップメニューにあるすべての Component
を返します。
Component
の配列。ポップアップメニューがない場合は空の配列public boolean isTopLevelMenu()
public boolean isMenuComponent(Component c)
c
- 判定対象の Component
Component
が存在する場合は true、そうでない場合は falsepublic JPopupMenu getPopupMenu()
public void addMenuListener(MenuListener l)
l
- 追加されるリスナーpublic void removeMenuListener(MenuListener l)
l
- 削除されるリスナーpublic MenuListener[] getMenuListeners()
MenuListener
の配列を返します。
MenuListener
。追加されたリスナーがない場合は空の配列protected void fireMenuSelected()
Error
- null
リスナーが存在する場合EventListenerList
protected void fireMenuDeselected()
Error
- null
リスナーが存在する場合EventListenerList
protected void fireMenuCanceled()
Error
- null
リスナーが存在する場合EventListenerList
protected void configurePropertiesFromAction(Action a)
Action
インスタンスの値に従って ActionEvent
ソースのプロパティを設定するファクトリメソッドです。設定されるプロパティはサブクラスによって異なります。デフォルトでは、設定されるプロパティは Text
、Icon
、Enabled
、ToolTipText
、ActionCommand
、および Mnemonic
です。
JMenuItem
内の configurePropertiesFromAction
a
- プロパティを取得する Action
、または null
Action
,
AbstractButton.setAction(javax.swing.Action)
protected JMenu.WinListener createWinListener(JPopupMenu p)
p
- JPopupMenu
JMenu.WinListener
public void menuSelectionChanged(boolean isIncluded)
JMenuItem.menuSelectionChanged
をオーバーライドします。
MenuElement
内の menuSelectionChanged
JMenuItem
内の menuSelectionChanged
isIncluded
- このメニューがアクティブな場合は true、そうでない場合は falseMenuSelectionManager.setSelectedPath(MenuElement[])
public MenuElement[] getSubElements()
MenuElement
の配列を返します。ポップアップメニューが null
の場合は空の配列を返します。このメソッドは、MenuElement
インタフェースに適合するために必要です。JSeparator
は MenuElement
インタフェースに適合しないので、この配列には JMenuItem
だけが含まれます。
MenuElement
内の getSubElements
JMenuItem
内の getSubElements
MenuElement
オブジェクトの配列public Component getComponent()
MenuElement
をペイントするのに使われる java.awt.Component
を返します。返されたコンポーネントは、イベントを変換し、イベントが発生した場所がメニューコンポーネント内であるかどうかを検出するために使われます。
MenuElement
内の getComponent
JMenuItem
内の getComponent
public void applyComponentOrientation(ComponentOrientation o)
ComponentOrientation
プロパティを設定します。これには getMenuComponents
によって返されたすべてのコンポーネントが含まれます。
Container
内の applyComponentOrientation
NullPointerException
- orientation
が null の場合Component.setComponentOrientation(java.awt.ComponentOrientation)
,
Component.getComponentOrientation()
public void setComponentOrientation(ComponentOrientation o)
Component
の記述: LayoutManager
サブクラスおよび Component
サブクラスはこのプロパティを使用してコンポーネントの配置方法および描画方法を決めます。
構築時には、コンポーネントの方向は、明示的に指定されていないことを示す ComponentOrientation.UNKNOWN
に設定されます。UNKNOWN の方向の動作は ComponentOrientation.LEFT_TO_RIGHT
と同じです。
コンポーネントの方向決定を単独で行う場合はこのメソッドを使用します。コンポーネント階層全体の方向を決定する場合は、applyComponentOrientation
を使用します。
Component
内の setComponentOrientation
ComponentOrientation
public void setAccelerator(KeyStroke keyStroke)
setAccelerator
は JMenu
には定義されていません。代わりに setMnemonic
を使用してください。
JMenuItem
内の setAccelerator
keyStroke
- メニュー階層を移動することなく JMenuItem
のアクションリスナーを呼び出すキーストロークの組み合わせ
Error
- 呼び出された場合。このメソッドは JMenu には定義されていない。代わりに setMnemonic
を使用protected void processKeyEvent(KeyEvent evt)
JComponent
内の processKeyEvent
evt
- 処理されるキーイベントKeyEvent
,
KeyListener
,
Component.addKeyListener(java.awt.event.KeyListener)
,
Component.enableEvents(long)
,
Component.isShowing()
public void doClick(int pressTime)
AbstractButton.doClick
メソッドをオーバーライドします。
AbstractButton
内の doClick
pressTime
- ボタンが押されたミリ秒数protected String paramString()
JMenu
の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null
にはなりません。
JMenuItem
内の paramString
public AccessibleContext getAccessibleContext()
Accessible
内の getAccessibleContext
JMenuItem
内の getAccessibleContext
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.