|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--javax.swing.plaf.ComponentUI | +--javax.swing.plaf.ComboBoxUI | +--javax.swing.plaf.basic.BasicComboBoxUI
JComboBox のための基本 UI 実装です。
コンボボックスは、複合コンポーネント、つまり多くの単純なコンポーネントの集合です。このクラスは、コンボボックスとコンボボックスモデル上のリスナーを作成、管理します。これらのリスナーは、コンボボックスの状態とプロパティにおける変更に応じて、ユーザインタフェースを更新します。
すべてのイベント処理は、createxxxListener()
の各メソッド、および内部クラスを使用して作成されたリスナークラスにより処理されます。このクラスの動作を変更するには、createxxxListener()
の各メソッドをオーバーライドした上で、独自のイベントリスナーを提供するか、このクラスで提供されたイベントリスナーからサブクラス化します。
特定のアクションを追加するには、installKeyboardActions
をオーバーライドして、KeyStroke バインディングに応じてアクションを追加します。「Swing 接続」 の 「Swing におけるキーボードバインディング」 の項目を参照してください。
入れ子クラスの概要 | |
class |
BasicComboBoxUI.ComboBoxLayoutManager
このレイアウトマネージャは、コンボボックスの「標準」レイアウトを扱います。 |
class |
BasicComboBoxUI.FocusHandler
フォーカスが失われたとき、このリスナーはポップアップを覆い隠します。 |
class |
BasicComboBoxUI.ItemHandler
このリスナーは、コンボボックスの選択の変更を監視します。 |
class |
BasicComboBoxUI.KeyHandler
このリスナーは、キーイベントがナビゲーションキーでないかどうかを確認します。 |
class |
BasicComboBoxUI.ListDataHandler
このリスナーは、 ComboBoxModel 内での変更を監視します。
|
class |
BasicComboBoxUI.PropertyChangeHandler
このリスナーは、コンボボックス内で変更されたバウンドプロパティを監視します。 |
フィールドの概要 | |
protected JButton |
arrowButton
|
protected Dimension |
cachedMinimumSize
|
protected JComboBox |
comboBox
|
protected CellRendererPane |
currentValuePane
|
protected Component |
editor
|
protected FocusListener |
focusListener
この protected フィールドは、実装固有のものです。 |
protected boolean |
hasFocus
この protected フィールドは、実装固有のものです。 |
protected boolean |
isMinimumSizeDirty
|
protected ItemListener |
itemListener
この protected フィールドは、実装固有のものです。 |
protected KeyListener |
keyListener
この protected フィールドは、実装固有のものです。 |
protected JList |
listBox
|
protected ListDataListener |
listDataListener
この protected フィールドは、実装固有のものです。 |
protected ComboPopup |
popup
|
protected KeyListener |
popupKeyListener
|
protected MouseListener |
popupMouseListener
|
protected MouseMotionListener |
popupMouseMotionListener
|
protected PropertyChangeListener |
propertyChangeListener
この protected フィールドは、実装固有のものです。 |
コンストラクタの概要 | |
BasicComboBoxUI()
|
メソッドの概要 | |
void |
addEditor()
この public メソッドは実装固有のもので、private である必要があります。 |
void |
configureArrowButton()
public メソッドは実装固有のもので、private である必要があります。 |
protected void |
configureEditor()
protected メソッドは実装固有のもので、private である必要があります。 |
protected JButton |
createArrowButton()
コンボボックスのポップアップ部分の表示または非表示の制御に使用されるボタンを作成します。 |
protected ComboBoxEditor |
createEditor()
編集可能なコンボボックスで使用されるデフォルトエディタを作成します。 |
protected FocusListener |
createFocusListener()
コンボボックスに追加される FocusListener を作成します。 |
protected ItemListener |
createItemListener()
コンボボックスに追加される ItemListener を作成します。 |
protected KeyListener |
createKeyListener()
コンボボックスに追加される KeyListener を作成します。 |
protected LayoutManager |
createLayoutManager()
コンボボックスを構成するコンポーネントを管理するための、レイアウトマネージャを作成します。 |
protected ListDataListener |
createListDataListener()
ComboBoxModel に追加されるリストデータリスナーを作成します。 |
protected ComboPopup |
createPopup()
コンボボックスのポップアップ部分を作成します。 |
protected PropertyChangeListener |
createPropertyChangeListener()
コンボボックスに追加される PropertyChangeListener を作成します。 |
protected ListCellRenderer |
createRenderer()
編集不可能なコンボボックスで使用されるデフォルトレンダリングを作成します。 |
static ComponentUI |
createUI(JComponent c)
指定されたコンポーネントの UI 委譲のインスタンスを返します。 |
Accessible |
getAccessibleChild(JComponent c,
int i)
オブジェクト内の i 番目の Accessible 機能を持つ子を返します。 |
int |
getAccessibleChildrenCount(JComponent c)
オブジェクト内のユーザ補助の子の数を返します。 |
protected Dimension |
getDefaultSize()
現在のレンダリングとフォントを使用して、コンボボックスの空のディスプレイ領域のデフォルトサイズを返します。 |
protected Dimension |
getDisplaySize()
ディスプレイ領域の、計算されたサイズを返します。 |
protected Insets |
getInsets()
JComboBox からインセットを取得します。 |
Dimension |
getMaximumSize(JComponent c)
Look & Feel に適した、指定されたコンポーネントの最大サイズを返します。 |
Dimension |
getMinimumSize(JComponent c)
最小サイズは、ディスプレイ領域、インセット、およびボタンを足したサイズです。 |
Dimension |
getPreferredSize(JComponent c)
Look & Feel に適した、指定されたコンポーネントの適切なサイズを返します。 |
protected void |
installComponents()
集合コンボボックスを構成するコンポーネントを作成、初期化します。 |
protected void |
installDefaults()
JComboBox に、デフォルトのカラー、フォント、レンダリング、およびエディタをインストールします。 |
protected void |
installKeyboardActions()
JComboBox にキーボードアクションを追加します。 |
protected void |
installListeners()
コンボボックスとそのモデルのためのリスナーを作成、インストールします。 |
void |
installUI(JComponent c)
Look & Feel に適した、指定されたコンポーネントを構成します。 |
boolean |
isFocusTraversable(JComboBox c)
JComboBox が、フォーカスのトラバースが可能であるかどうかを判定します。 |
protected boolean |
isNavigationKey(int keyCode)
提供された keyCode について、ナビゲーションに使うキーにマップするかどうかを返します。 |
boolean |
isPopupVisible(JComboBox c)
ポップアップが可視かどうかを判定します。 |
void |
paint(Graphics g,
JComponent c)
Look &Feel に適した、指定されたコンポーネントをペイントします。 |
void |
paintCurrentValue(Graphics g,
Rectangle bounds,
boolean hasFocus)
現在選択されている項目を描画します。 |
void |
paintCurrentValueBackground(Graphics g,
Rectangle bounds,
boolean hasFocus)
現在選択されている項目のバックグラウンドを描画します。 |
protected Rectangle |
rectangleForCurrentValue()
現在選択されている項目を描画するために予約されている領域を返します。 |
void |
removeEditor()
public メソッドは実装固有のもので、private である必要があります。 |
protected void |
selectNextPossibleValue()
リストから次の項目を選択します。 |
protected void |
selectPreviousPossibleValue()
リストから 1 つ前の項目を選択します。 |
void |
setPopupVisible(JComboBox c,
boolean v)
ポップアップを隠します。 |
protected void |
toggleOpenClose()
ポップアップが表示されている場合はそれを隠し、隠されている場合はそれを表示します。 |
void |
unconfigureArrowButton()
public メソッドは実装固有のもので、private である必要があります。 |
protected void |
unconfigureEditor()
protected メソッドは実装固有のもので、private である必要があります。 |
protected void |
uninstallComponents()
コンボボックスを構成する集合コンポーネントは登録を解除され、初期化されません。 |
protected void |
uninstallDefaults()
JComboBox から、デフォルトのカラー、フォント、レンダリング、およびエディタをアンインストールします。 |
protected void |
uninstallKeyboardActions()
フォーカス InputMap および ActionMap を削除します。 |
protected void |
uninstallListeners()
インストールされたリスナーを、コンボボックスとそのモデルから削除します。 |
void |
uninstallUI(JComponent c)
installUI 時に、指定されたコンポーネントで実行した構成を取り消します。 |
クラス javax.swing.plaf.ComponentUI から継承したメソッド |
contains, update |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
protected JComboBox comboBox
protected boolean hasFocus
protected JList listBox
protected CellRendererPane currentValuePane
protected ComboPopup popup
protected Component editor
protected JButton arrowButton
protected KeyListener keyListener
createKeyListener()
protected FocusListener focusListener
createFocusListener()
protected PropertyChangeListener propertyChangeListener
createPropertyChangeListener()
protected ItemListener itemListener
createItemListener()
protected MouseListener popupMouseListener
protected MouseMotionListener popupMouseMotionListener
protected KeyListener popupKeyListener
protected ListDataListener listDataListener
createListDataListener()
protected boolean isMinimumSizeDirty
protected Dimension cachedMinimumSize
コンストラクタの詳細 |
public BasicComboBoxUI()
メソッドの詳細 |
public static ComponentUI createUI(JComponent c)
ComponentUI
の記述: createUI
メソッドを提供して、その UI 委譲のサブクラスのインスタンスを返す必要があります。UI 委譲のサブクラスが状態なしの場合、複数のコンポーネントに共有されるインスタンスを返します。UI 委譲が状態ありの場合、コンポーネントごとに新しいインスタンスを返す必要があります。このメソッドは呼び出してはいけないため、そのデフォルト実装はエラーをスローします。
public void installUI(JComponent c)
ComponentUI
の記述: ComponentUI
インスタンスが、指定されたコンポーネントの UI 委譲としてインストールされているときに呼び出されます。このメソッドは、以下を含む Look & Feel 用のコンポーネントを完全に構成する必要があります。
LayoutManager
をインストールする
PropertyChangeListener
をコンポーネントに作成またはインストールする
ComponentUI
内の installUI
c
- UI 委譲がインストールされているコンポーネントComponentUI.uninstallUI(javax.swing.JComponent)
,
JComponent.setUI(javax.swing.plaf.ComponentUI)
,
JComponent.updateUI()
public void uninstallUI(JComponent c)
ComponentUI
の記述: installUI
時に、指定されたコンポーネントで実行した構成を取り消します。このメソッドは、指定されたコンポーネントの UI 委譲としての UIComponent
インスタンスが削除されているときに呼び出されます。このメソッドは、installUI
によって実行された構成を元に戻す必要があります。この場合、JComponent
インスタンスをクリーンな状態 (余分なリスナーや、Look & Feel 固有のプロパティオブジェクトが残らないように) にするよう十分注意してください。手順には次のものがあります。
ComponentUI
内の uninstallUI
c
- この UI 委譲が削除されるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがあるComponentUI.installUI(javax.swing.JComponent)
,
JComponent.updateUI()
protected void installDefaults()
protected void installListeners()
protected void uninstallDefaults()
protected void uninstallListeners()
installListeners
に追加されたものと同じになる必要があります。
protected ComboPopup createPopup()
ComboPopup
のインスタンスComboPopup
protected KeyListener createKeyListener()
KeyListener
を作成します。このメソッドが null を返す場合、コンボボックスには追加されません。
KeyListener
のインスタンス、または nullprotected FocusListener createFocusListener()
FocusListener
を作成します。このメソッドが null を返す場合、コンボボックスには追加されません。
FocusListener
のインスタンス、または nullprotected ListDataListener createListDataListener()
ComboBoxModel
に追加されるリストデータリスナーを作成します。このメソッドが null を返す場合、コンボボックスモデルには追加されません。
ListDataListener
のインスタンス、または nullprotected ItemListener createItemListener()
ItemListener
を作成します。このメソッドが null を返す場合、コンボボックスには追加されません。
サブクラスは、このメソッドをオーバーライドして、独自の ItemEvent ハンドラのインスタンスを返すことができます。
ItemListener
のインスタンス、または nullprotected PropertyChangeListener createPropertyChangeListener()
PropertyChangeListener
を作成します。このメソッドが null を返す場合、コンボボックスには追加されません。
PropertyChangeListener
のインスタンス、または nullprotected LayoutManager createLayoutManager()
protected ListCellRenderer createRenderer()
setRenderer
が明示的に設定されていない場合だけ、デフォルトレンダリングが使用されます。
ListCellRender
JComboBox.setRenderer(javax.swing.ListCellRenderer)
protected ComboBoxEditor createEditor()
setEditor
が明示的に設定されていない場合だけ、デフォルトエディタが使用されます。
ComboBoxEditor
JComboBox.setEditor(javax.swing.ComboBoxEditor)
protected void installComponents()
protected void uninstallComponents()
public void addEditor()
ComboBoxEditor
を作成してください。
createEditor
,
JComboBox.setEditor(javax.swing.ComboBoxEditor)
,
ComboBoxEditor
public void removeEditor()
addEditor
protected void configureEditor()
addEditor
protected void unconfigureEditor()
addEditor
public void configureArrowButton()
createArrowButton
public void unconfigureArrowButton()
createArrowButton
protected JButton createArrowButton()
public boolean isPopupVisible(JComboBox c)
ComboBoxUI
内の isPopupVisible
public void setPopupVisible(JComboBox c, boolean v)
ComboBoxUI
内の setPopupVisible
public boolean isFocusTraversable(JComboBox c)
ComboBoxUI
内の isFocusTraversable
public void paint(Graphics g, JComponent c)
ComponentUI
の記述: ComponentUI.update
メソッドから、指定されたコンポーネントがペイントされるときに呼び出されます。サブクラスは、このメソッドをオーバーライドして、指定された Graphics
オブジェクトを使ってコンポーネントの内容を描画する必要があります。
ComponentUI
内の paint
g
- ペイント先となる Graphics
コンテキストc
- ペイントされるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがあるComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
public Dimension getPreferredSize(JComponent c)
ComponentUI
の記述: null
が返される場合、適切なサイズは代わりにコンポーネントのレイアウトマネージャによって計算されます (これは、特定のレイアウトマネージャをインストールしてあるコンポーネントの場合に推奨する方法です)。このメソッドのデフォルト実装は null
を返します。
ComponentUI
内の getPreferredSize
c
- 適切なサイズが照会されるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがあるJComponent.getPreferredSize()
,
LayoutManager.preferredLayoutSize(java.awt.Container)
public Dimension getMinimumSize(JComponent c)
ComponentUI
内の getMinimumSize
c
- 最小サイズが照会されるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがある
Dimension
オブジェクト、または null
JComponent.getMinimumSize()
,
LayoutManager.minimumLayoutSize(java.awt.Container)
,
ComponentUI.getPreferredSize(javax.swing.JComponent)
public Dimension getMaximumSize(JComponent c)
ComponentUI
の記述: null
が返される場合、最大サイズは代わりにコンポーネントのレイアウトマネージャによって計算されます (これは、特定のレイアウトマネージャをインストールしてあるコンポーネントの場合に推奨する方法です)。このメソッドのデフォルト実装は getPreferredSize
を呼び出して、その値を返します。
ComponentUI
内の getMaximumSize
c
- 最大サイズが照会されるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがある
Dimension
オブジェクト、または null
JComponent.getMaximumSize()
,
LayoutManager2.maximumLayoutSize(java.awt.Container)
public int getAccessibleChildrenCount(JComponent c)
ComponentUI
の記述: Accessible
を実装する場合、メソッドはこのオブジェクトの子の数を返します。UI が、画面上にコンポーネントとして表示される領域を示すが、この領域を提供するのに実際のコンポーネントを使用しない場合、UI は必要に応じてこのメソッドをオーバーライドしようとします。バージョン 1.3 以降は、このメソッドの代わりに Component.AccessibleAWTComponent.getAccessibleChildrenCount()
を呼び出すことが推奨されています。
ComponentUI
内の getAccessibleChildrenCount
ComponentUI.getAccessibleChild(javax.swing.JComponent, int)
public Accessible getAccessibleChild(JComponent c, int i)
ComponentUI
の記述: i
番目の Accessible
機能を持つ子を返します。UI が、画面上にコンポーネントとして表示される領域は提供するが、この領域を提供するのに実際のコンポーネントを使用しない場合、UI は必要に応じてこのメソッドをオーバーライドします。
注: バージョン 1.3 以降は、このメソッドの代わりに Component.AccessibleAWTComponent.getAccessibleChildrenCount()
を呼び出すことが推奨されています。
ComponentUI
内の getAccessibleChild
i
- ゼロから始まる子のインデックス
i
番目の Accessible
機能を持つ子ComponentUI.getAccessibleChildrenCount(javax.swing.JComponent)
protected boolean isNavigationKey(int keyCode)
protected void selectNextPossibleValue()
protected void selectPreviousPossibleValue()
protected void toggleOpenClose()
protected Rectangle rectangleForCurrentValue()
protected Insets getInsets()
public void paintCurrentValue(Graphics g, Rectangle bounds, boolean hasFocus)
public void paintCurrentValueBackground(Graphics g, Rectangle bounds, boolean hasFocus)
protected Dimension getDefaultSize()
getDisplaySize
protected Dimension getDisplaySize()
項目数の多いコンボボックスについては、プロトタイプディスプレイ値を使用して、ディスプレイサイズの計算を大幅に速めることをお勧めします。
JComboBox.setPrototypeDisplayValue(java.lang.Object)
protected void installKeyboardActions()
protected void uninstallKeyboardActions()
|
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.