|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JPopupMenu
public class JPopupMenu
ポップアップメニューの実装です。ポップアップメニューは小さなウィンドウで、複数の選択肢 (メニューコマンド) を表示します。JPopupMenu
は、メニューバー上の項目が選択されたときに表示するメニューに使用します。また、選択したメニュー項目によっては表示されることもある、プルライトメニューにも使用されます。あるいは、メニューを表示させたい他の場所 (メニューバー以外の場所) でも、JPopupMenu
を使用できます。たとえば、特定の場所で右クリックが発生した場合のポップアップメニュー表示 (ショートカットメニュー) などです。
ポップアップメニューの使用方法の詳細と例については、「The Java Tutorial」の「How to Use Menus」を参照してください。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。JDK バージョン 1.4 以降、すべての JavaBeans™ の長期間の運用サポートは、java.beans
パッケージに追加されています。詳細は、XMLEncoder
を参照してください。
入れ子のクラスの概要 | |
---|---|
protected class |
JPopupMenu.AccessibleJPopupMenu
このクラスは JPopupMenu クラス用のユーザ補助機能のサポートを実装しています。 |
static class |
JPopupMenu.Separator
ポップアップメニュー固有のセパレータです。 |
クラス javax.swing.JComponent から継承された入れ子のクラス/インタフェース |
---|
JComponent.AccessibleJComponent |
クラス java.awt.Container から継承された入れ子のクラス/インタフェース |
---|
Container.AccessibleAWTContainer |
クラス java.awt.Component から継承された入れ子のクラス/インタフェース |
---|
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy |
フィールドの概要 |
---|
クラス 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 |
インタフェース java.awt.image.ImageObserver から継承されたフィールド |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
コンストラクタの概要 | |
---|---|
JPopupMenu()
呼び出しコンポーネントを定義しないで JPopupMenu を構築します。 |
|
JPopupMenu(String label)
指定されたタイトルの PopupMenu を構築します。 |
メソッドの概要 | |
---|---|
JMenuItem |
add(Action a)
メニューの末尾に、指定された Action オブジェクトを振り分けるメニュー項目を追加します。 |
JMenuItem |
add(JMenuItem menuItem)
指定されたメニュー項目をメニューの末尾に追加します。 |
JMenuItem |
add(String s)
指定されたテキストを持つ新しいメニュー項目を作成して、このメニューの末尾に追加します。 |
void |
addMenuKeyListener(MenuKeyListener l)
ポップアップメニューに MenuKeyListener を追加します。 |
void |
addPopupMenuListener(PopupMenuListener l)
PopupMenu リスナーを追加します。 |
void |
addSeparator()
メニューの末尾に新しいセパレータを追加します。 |
protected PropertyChangeListener |
createActionChangeListener(JMenuItem b)
Action に対する変更が発生した場合にコントロールを更新する、適切に設定された PropertyChangeListener を返します。 |
protected JMenuItem |
createActionComponent(Action a)
JPopupMenu に追加された Action の JMenuItem を作成するファクトリメソッドです。 |
protected void |
firePopupMenuCanceled()
PopupMenuListener に、ポップアップメニューが取り消されたことを通知します。 |
protected void |
firePopupMenuWillBecomeInvisible()
PopupMenuListener に、ポップアップメニューが不可視になることを通知します。 |
protected void |
firePopupMenuWillBecomeVisible()
PopupMenuListener に、ポップアップメニューが可視になることを通知します。 |
AccessibleContext |
getAccessibleContext()
この JPopupMenu に関連した AccessibleContext を返します。 |
Component |
getComponent()
この JPopupMenu コンポーネントを返します。 |
Component |
getComponentAtIndex(int i)
推奨されていません。 getComponent(int i) に置き換えられました。 |
int |
getComponentIndex(Component c)
指定されたコンポーネントのインデックスを返します。 |
static boolean |
getDefaultLightWeightPopupEnabled()
defaultLightWeightPopupEnabled プロパティを取得します。 |
Component |
getInvoker()
ポップアップメニューの呼び出しコンポーネントを返します。 |
String |
getLabel()
ポップアップメニューのラベルを返します。 |
Insets |
getMargin()
ポップアップメニューのボーダと内容の間にあるマージンの値を返します (ピクセル単位)。 |
MenuKeyListener[] |
getMenuKeyListeners()
この JPopupMenu に addMenuKeyListener() で追加されたすべての MenuKeyListener の配列を返します。 |
PopupMenuListener[] |
getPopupMenuListeners()
この JMenuItem に addPopupMenuListener() で追加されたすべての PopupMenuListener の配列を返します。 |
SingleSelectionModel |
getSelectionModel()
単一の選択を扱うモデルオブジェクトを返します。 |
MenuElement[] |
getSubElements()
このメニューコンポーネントのサブメニューを格納する MenuElement の配列を返します。 |
PopupMenuUI |
getUI()
このコンポーネントを描画する Look & Feel (L&F) オブジェクトを返します。 |
String |
getUIClassID()
このコンポーネントを描画する L&F クラスの名前を返します。 |
void |
insert(Action a,
int index)
指定された Action オブジェクトを、メニュー項目として指定の位置に挿入します。 |
void |
insert(Component component,
int index)
指定されたコンポーネントを、メニューの指定された位置に挿入します。 |
boolean |
isBorderPainted()
ボーダをペイントするかどうかを調べます。 |
boolean |
isLightWeightPopupEnabled()
lightWeightPopupEnabled プロパティを取得します。 |
boolean |
isPopupTrigger(MouseEvent e)
JPopupMenu の現在インストールされている UI が MouseEvent をポップアップトリガと見なす場合は、true を返します。 |
boolean |
isVisible()
ポップアップメニューが可視 (現在表示中) である場合に true を返します。 |
void |
menuSelectionChanged(boolean isIncluded)
このメニューをアクティブにするか、アクティブではなくするためにメニューバーの選択が変更されたときに、メッセージを送ります。 |
void |
pack()
コンテナをレイアウトして、内容の表示に最小限の空間を使用するようにします。 |
protected void |
paintBorder(Graphics g)
borderPainted プロパティが true である場合に、ポップアップメニューのボーダをペイントします。 |
protected String |
paramString()
この JPopupMenu の文字列表現を返します。 |
protected void |
processFocusEvent(FocusEvent evt)
このコンポーネントで発生するフォーカスイベントを、登録されているすべての FocusListener オブジェクトにディスパッチすることにより処理します。 |
protected void |
processKeyEvent(KeyEvent evt)
ニーモニックやアクセラレータなどの、キーストロークイベントを処理します。 |
void |
processKeyEvent(KeyEvent e,
MenuElement[] path,
MenuSelectionManager manager)
MenuSelectionManager から転送されるキーイベントを処理します。 |
void |
processMouseEvent(MouseEvent event,
MenuElement[] path,
MenuSelectionManager manager)
このメソッドは MenuElement インタフェースに適合するために必要ですが、実装されていません。 |
void |
remove(int pos)
指定されたインデックスにあるコンポーネントをこのポップアップメニューから削除します。 |
void |
removeMenuKeyListener(MenuKeyListener l)
ポップアップメニューから MenuKeyListener を削除します。 |
void |
removePopupMenuListener(PopupMenuListener l)
PopupMenu リスナーを削除します。 |
void |
setBorderPainted(boolean b)
ボーダをペイントするかどうかを設定します。 |
static void |
setDefaultLightWeightPopupEnabled(boolean aFlag)
lightWeightPopupEnabled プロパティのデフォルト値を設定します。 |
void |
setInvoker(Component invoker)
ポップアップメニューの呼び出しコンポーネント、すなわち、ポップアップメニュー項目が表示されるコンポーネントを設定します。 |
void |
setLabel(String label)
ポップアップメニューのラベルを設定します。 |
void |
setLightWeightPopupEnabled(boolean aFlag)
lightWeightPopupEnabled のデフォルト値を設定します。 |
void |
setLocation(int x,
int y)
x、y 座標を使用して、ポップアップメニューの左上隅の位置を設定します。 |
void |
setPopupSize(Dimension d)
Dimension オブジェクトを使用して、ポップアップウィンドウのサイズを設定します。 |
void |
setPopupSize(int width,
int height)
ポップアップウィンドウのサイズを、指定された幅および高さに設定します。 |
void |
setSelected(Component sel)
現在選択されるコンポーネントを設定します。 |
void |
setSelectionModel(SingleSelectionModel model)
単一の選択を扱うモデルオブジェクトを設定します。 |
void |
setUI(PopupMenuUI ui)
このコンポーネントを描画する L&F オブジェクトを設定します。 |
void |
setVisible(boolean b)
ポップアップメニューの可視性を設定します。 |
void |
show(Component invoker,
int x,
int y)
呼び出しコンポーネント内の x、y 座標で指定された位置にポップアップメニューを表示します。 |
void |
updateUI()
現在の Look & Feel からの値に UI プロパティをリセットします。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
---|
public JPopupMenu()
JPopupMenu
を構築します。
public JPopupMenu(String label)
PopupMenu
を構築します。
label
- ポップアップメニューのタイトルとして UI が使用する文字列メソッドの詳細 |
---|
public static void setDefaultLightWeightPopupEnabled(boolean aFlag)
lightWeightPopupEnabled
プロパティのデフォルト値を設定します。
aFlag
- ポップアップが軽量の場合は true
、そうでない場合は false
@see #getDefaultLightWeightPopupEnabled @see #setLightWeightPopupEnabledpublic static boolean getDefaultLightWeightPopupEnabled()
defaultLightWeightPopupEnabled
プロパティを取得します。デフォルトでは true
です。
defaultLightWeightPopupEnabled
プロパティの値setDefaultLightWeightPopupEnabled(boolean)
public PopupMenuUI getUI()
PopupMenuUI
オブジェクトpublic void setUI(PopupMenuUI ui)
ui
- 新規 PopupMenuUI
L&F オブジェクトUIDefaults.getUI(javax.swing.JComponent)
public void updateUI()
JComponent
内の updateUI
JComponent.updateUI()
public String getUIClassID()
JComponent
内の getUIClassID
JComponent.getUIClassID()
,
UIDefaults.getUI(javax.swing.JComponent)
protected void processFocusEvent(FocusEvent evt)
Component
の記述: FocusListener
オブジェクトにディスパッチすることにより処理します。
このコンポーネントに対してフォーカスイベントが使用可能でない場合、このメソッドは呼び出されません。フォーカスイベントは、次のいずれかの場合に使用可能になります。
FocusListener
オブジェクトが addFocusListener
によって登録されているenableEvents
によってフォーカスイベントが使用可能になっている
フォーカスイベントが Component
に対して使用可能になっている場合、現在の KeyboardFocusManager
によって、フォーカスイベントを登録された FocusListener
オブジェクトにディスパッチする必要があるかどうかが判断されます。イベントをディスパッチする場合、KeyboardFocusManager
は Component
の dispatchEvent
メソッドを呼び出すため、Component
の processFocusEvent
メソッドが呼び出されます。
フォーカスイベントが Component
に対して使用可能になっている場合、FocusEvent
を引数として Component
の dispatchEvent
メソッドを呼び出すと、現在の KeyboardFocusManager
に関係なく、Component
の processFocusEvent
メソッドが呼び出されます。
イベントパラメータが null
の場合の動作は定義されていないため例外がスローされます。
Component
内の processFocusEvent
evt
- フォーカスイベントFocusEvent
,
FocusListener
,
KeyboardFocusManager
,
Component.addFocusListener(java.awt.event.FocusListener)
,
Component.enableEvents(long)
,
Component.dispatchEvent(java.awt.AWTEvent)
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 SingleSelectionModel getSelectionModel()
selectionModel
プロパティSingleSelectionModel
public void setSelectionModel(SingleSelectionModel model)
model
- 新規 SingleSelectionModel
SingleSelectionModel
public JMenuItem add(JMenuItem menuItem)
menuItem
- 追加する JMenuitem
JMenuItem
public JMenuItem add(String s)
s
- 追加されるメニュー項目の文字列public JMenuItem add(Action a)
Action
オブジェクトを振り分けるメニュー項目を追加します。
JDK 1.3 以降は、コンテナに Action
を追加する場合に、このメソッドを使用することは推奨されません。代わりに、setAction
を使用してアクションを持つコントロールを設定し、そのコントロールを直接 Container
に追加することをお勧めします。
a
- メニューに追加する Action
Action
protected JMenuItem createActionComponent(Action a)
JPopupMenu
に追加された Action
の JMenuItem
を作成するファクトリメソッドです。JDK 1.3 以降は、このメソッドは推奨されません。代わりに、setAction
を使用してアクションを持つコントロールを設定し、そのコントロールを直接 Container
に追加することをお勧めします。
a
- 追加されるメニュー項目の Action
Action
protected PropertyChangeListener createActionChangeListener(JMenuItem b)
Action
に対する変更が発生した場合にコントロールを更新する、適切に設定された PropertyChangeListener
を返します。JDK 1.3 以降は、このメソッドはコンテナに Action
を追加するメソッドとしては推奨されません。代わりに、setAction
を使用してアクションを持つコントロールを設定し、そのコントロールを直接 Container
に追加することをお勧めします。
public void remove(int pos)
Container
内の remove
pos
- 削除される項目の位置
IllegalArgumentException
- pos
の値が 0 より小さいか、pos
の値がメニュー項目の数より大きい場合Container.add(java.awt.Component)
public void setLightWeightPopupEnabled(boolean aFlag)
lightWeightPopupEnabled
のデフォルト値を設定します。デフォルトでは true
です。Look & Feel がポップアップを表示するとき、デフォルトでは軽量 (すべて Java の) ポップアップの使用を選択できます。軽量ポップアップウィンドウは重量 (ネイティブピアの) ウィンドウより効率的ですが、軽量コンポーネントと重量コンポーネントを GUI の中で混在させてはいけません。アプリケーションで軽量コンポーネントと重量コンポーネントが混在している場合は、軽量ポップアップを無効にする必要があります。このプロパティの値にかかわらず、常に重量ポップアップを使用する Look & Feel もあります。
aFlag
- 軽量ポップアップを無効にする場合は false
isLightWeightPopupEnabled()
public boolean isLightWeightPopupEnabled()
lightWeightPopupEnabled
プロパティを取得します。
lightWeightPopupEnabled
プロパティの値setLightWeightPopupEnabled(boolean)
public String getLabel()
setLabel(java.lang.String)
public void setLabel(String label)
label
- ポップアップメニューのラベルを指定する文字列setLabel(java.lang.String)
public void addSeparator()
public void insert(Action a, int index)
Action
オブジェクトを、メニュー項目として指定の位置に挿入します。
a
- 挿入する Action
オブジェクトindex
- Action
を挿入する位置。0 はメニューの先頭
IllegalArgumentException
- index
の値が 0 より小さい場合Action
public void insert(Component component, int index)
component
- 挿入する Component
index
- コンポーネントを挿入する位置。0 はメニューの先頭
IllegalArgumentException
- index
の値が 0 より小さい場合public void addPopupMenuListener(PopupMenuListener l)
PopupMenu
リスナーを追加します。
l
- 追加する PopupMenuListener
public void removePopupMenuListener(PopupMenuListener l)
PopupMenu
リスナーを削除します。
l
- 削除する PopupMenuListener
public PopupMenuListener[] getPopupMenuListeners()
PopupMenuListener
の配列を返します。
PopupMenuListener
。追加されたリスナーがない場合は空の配列public void addMenuKeyListener(MenuKeyListener l)
MenuKeyListener
を追加します。
l
- 追加される MenuKeyListener
public void removeMenuKeyListener(MenuKeyListener l)
MenuKeyListener
を削除します。
l
- 削除される MenuKeyListener
public MenuKeyListener[] getMenuKeyListeners()
MenuKeyListener
の配列を返します。
MenuKeyListener
。追加されたリスナーがない場合は空の配列protected void firePopupMenuWillBecomeVisible()
PopupMenuListener
に、ポップアップメニューが可視になることを通知します。
protected void firePopupMenuWillBecomeInvisible()
PopupMenuListener
に、ポップアップメニューが不可視になることを通知します。
protected void firePopupMenuCanceled()
PopupMenuListener
に、ポップアップメニューが取り消されたことを通知します。
public void pack()
public void setVisible(boolean b)
JComponent
内の setVisible
b
- ポップアップを可視にする場合は true、隠す場合は falseComponent.isVisible()
public boolean isVisible()
Component
内の isVisible
true
、そうでない場合は false
Component.setVisible(boolean)
public void setLocation(int x, int y)
Component
内の setLocation
x
- 画面の座標空間でのポップアップメニューの新しい位置の x 座標y
- 画面の座標空間でのポップアップメニューの新しい位置の y 座標Component.getLocation()
,
Component.setBounds(int, int, int, int)
public Component getInvoker()
Component
public void setInvoker(Component invoker)
invoker
- ポップアップメニューが表示される Component
public void show(Component invoker, int x, int y)
invoker
- ポップアップメニューが表示されるコンポーネントx
- ポップアップメニューを表示する呼び出しコンポーネントの x 座標y
- ポップアップメニューを表示する呼び出しコンポーネントの y 座標@Deprecated public Component getComponentAtIndex(int i)
getComponent(int i)
に置き換えられました。
i
- コンポーネントのインデックス。0 が先頭
Component
public int getComponentIndex(Component c)
c
- 検索対象の Component
public void setPopupSize(Dimension d)
Dimension
オブジェクトを使用して、ポップアップウィンドウのサイズを設定します。これは、setPreferredSize(d)
と同等です。
d
- このコンポーネントの新しいサイズを指定する Dimension
public void setPopupSize(int width, int height)
setPreferredSize(new Dimension(width, height))
に相当します。
width
- Popup の新しい幅 (ピクセル単位)height
- Popup の新しい高さ (ピクセル単位)public void setSelected(Component sel)
sel
- 選択する Component
public boolean isBorderPainted()
setBorderPainted(boolean)
public void setBorderPainted(boolean b)
b
- true の場合はボーダがペイントされるisBorderPainted()
protected void paintBorder(Graphics g)
borderPainted
プロパティが true
である場合に、ポップアップメニューのボーダをペイントします。
JComponent
内の paintBorder
g
- Graphics
オブジェクトJComponent.paint(java.awt.Graphics)
,
JComponent.setBorder(javax.swing.border.Border)
public Insets getMargin()
Insets
オブジェクトprotected String paramString()
JPopupMenu
の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null
にはなりません。
JComponent
内の paramString
JPopupMenu
の文字列表現public AccessibleContext getAccessibleContext()
Accessible
内の getAccessibleContext
JComponent
内の getAccessibleContext
public void processMouseEvent(MouseEvent event, MenuElement[] path, MenuSelectionManager manager)
MenuElement
インタフェースに適合するために必要ですが、実装されていません。
MenuElement
内の processMouseEvent
MenuElement.processMouseEvent(MouseEvent, MenuElement[], MenuSelectionManager)
public void processKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager)
MenuSelectionManager
から転送されるキーイベントを処理します。必要に応じて MenuSelectionManager
の API を使用して、メニュー選択を変更します。
注: イベントをサブコンポーネントに転送する必要はありません。MenuSelectionManager
が自動的に実行します。
MenuElement
内の processKeyEvent
e
- KeyEvent
path
- MenuElement
パス配列manager
- MenuSelectionManager
public void menuSelectionChanged(boolean isIncluded)
javax.swing.MenuElement
インタフェースを実装します。MenuElement.menuSelectionChanged
をオーバーライドしてください。
MenuElement
内の menuSelectionChanged
isIncluded
- このメニューがアクティブな場合は true、そうでない場合は falseMenuElement.menuSelectionChanged(boolean)
public MenuElement[] getSubElements()
MenuElement
の配列を返します。JMenuElement
インタフェースに適合する項目だけを返します。ポップアップメニューが null
の場合は空の配列を返します。このメソッドは、MenuElement
インタフェースに適合するために必要です。
MenuElement
内の getSubElements
MenuElement
オブジェクトの配列MenuElement.getSubElements()
public Component getComponent()
JPopupMenu
コンポーネントを返します。
MenuElement
内の getComponent
JPopupMenu
オブジェクトMenuElement.getComponent()
public boolean isPopupTrigger(MouseEvent e)
JPopupMenu
の現在インストールされている UI が MouseEvent
をポップアップトリガと見なす場合は、true を返します。
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。