|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.AbstractButton javax.swing.JMenuItem javax.swing.JMenu
public class JMenu
メニューの実装であり、ユーザが JMenuBar
で項目を選択すると表示される JMenuItem
を保持するポップアップウィンドウです。JMenuItem
のほかに、JMenu
には JSeparator
も含めることができます。
メニューというのは実質的には JPopupMenu
が割り当てられたボタンのことです。「ボタン」が押されると JPopupMenu
が表示されます。「ボタン」が JMenuBar
上にあれば、そのメニューはトップレベルウィンドウです。「ボタン」が別のメニュー項目であれば JPopupMenu
は「プルライト」メニューです。
メニューの使用方法の詳細と例については、「The Java Tutorial」の「How to Use Menus」を参照してください。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。JDK バージョン 1.4 以降は、java.beans
パッケージですべての JavaBeans™ の長期記憶がサポートされます。XMLEncoder
を参照してください。
JMenuItem
,
JSeparator
,
JMenuBar
,
JPopupMenu
入れ子のクラスの概要 | |
---|---|
protected class |
JMenu.AccessibleJMenu
このクラスは JMenu クラス用のユーザ補助機能のサポートを実装しています。 |
protected class |
JMenu.WinListener
ポップアップウィンドウが閉じられるのを監視するリスナークラスです。 |
クラス javax.swing.JMenuItem から継承された入れ子のクラス/インタフェース |
---|
JMenuItem.AccessibleJMenuItem |
クラス javax.swing.AbstractButton から継承された入れ子のクラス/インタフェース |
---|
AbstractButton.AccessibleAbstractButton, AbstractButton.ButtonChangeListener |
クラス javax.swing.JComponent から継承された入れ子のクラス/インタフェース |
---|
JComponent.AccessibleJComponent |
クラス java.awt.Container から継承された入れ子のクラス/インタフェース |
---|
Container.AccessibleAWTContainer |
クラス java.awt.Component から継承された入れ子のクラス/インタフェース |
---|
Component.AccessibleAWTComponent, 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)
,
Container.validate()
,
JComponent.revalidate()
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)
,
Container.remove(int)
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
Component
public void applyComponentOrientation(ComponentOrientation o)
ComponentOrientation
プロパティを設定します。これには getMenuComponents
によって返されたすべてのコンポーネントが含まれます。
Container
内の applyComponentOrientation
o
- このメニューおよびこのメニューに含まれるコンポーネントの新しいコンポーネント方向
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
,
KeyboardFocusManager
,
DefaultKeyboardFocusManager
,
Component.processEvent(java.awt.AWTEvent)
,
Component.dispatchEvent(java.awt.AWTEvent)
,
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 Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。