java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.ComboBoxUI
javax.swing.plaf.basic.BasicComboBoxUI
- 直系の既知のサブクラス:
MetalComboBoxUI
,SynthComboBoxUI
public class BasicComboBoxUI extends ComboBoxUI
JComboBoxの基本UI実装です。
コンボボックスは、複合コンポーネント、つまり多くの単純なコンポーネントの集合です。 このクラスは、コンボボックスとコンボ・ボックス・モデル上のリスナーを作成し、管理します。 これらのリスナーは、コンボボックスの状態とプロパティにおける変更に応じて、ユーザー・インタフェースを更新します。
すべてのイベント処理は、createxxxListener()
の各メソッド、および内部クラスを使用して作成されたリスナー・クラスにより処理されます。 このクラスの動作を変更するには、createxxxListener()
の各メソッドをオーバーライドした上で、独自のイベント・リスナーを提供するか、このクラスで提供されているイベント・リスナーからサブクラス化します。
特定のアクションを追加するには、installKeyboardActions
をオーバーライドして、KeyStrokeバインディングに応じてアクションを追加します。 記事「キー・バインディングの使用方法」を参照してください。
-
ネストされたクラスのサマリー
修飾子と型クラス説明class
このレイアウト・マネージャは、コンボボックスの「標準」レイアウトを扱います。class
フォーカスが失われたときに、このリスナーはポップアップを隠します。class
このリスナーは、コンボボックスの選択の変更を監視します。class
このリスナーは、キー・イベントがナビゲーション・キーでないかどうかを確認します。class
このリスナーは、ComboBoxModel
内での変更を監視します。class
このリスナーは、コンボボックス内で変更されたバウンド・プロパティを監視します。 -
フィールドのサマリー
修飾子と型フィールド説明protected JButton
ポップアップを起動する矢印ボタン。protected Dimension
キャッシュされた最小優先サイズ。JComboBox
のインスタンス。protected CellRendererPane
コンボ・ボックスで現在選択されているアイテムを描画するために使用されます。protected Component
@{code ComboBoxEditor} が編集に使用するコンポーネント。protected FocusListener
このprotectedフィールドは実装固有のものです。protected boolean
このprotectedフィールドは実装固有のものです。protected boolean
最小優先サイズを再計算するためのフラグ。protected ItemListener
このprotectedフィールドは実装固有のものです。protected KeyListener
このprotectedフィールドは実装固有のものです。このリストは、現在のアイテムをコンボ・ボックスに描画するためのものです。protected ListDataListener
このprotectedフィールドは実装固有のものです。protected Insets
これらのイン・セットは、「選択された」項目をコンボボックスに配置し、ペイントする際に、セル・レンダラ周囲のパディングとして機能します。protected ComboPopup
ポップアップを表示するために使用されるComboPopup
の実装。protected KeyListener
KeyListener
はイベントを待ち受けます。protected MouseListener
MouseListener
はイベントを待ち受けます。protected MouseMotionListener
MouseMotionListener
はイベントを待ち受けます。protected PropertyChangeListener
このprotectedフィールドは実装固有のものです。protected boolean
コンボボックス・ボタンを正方形にするべきかどうかを示します。 -
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明void
このpublicメソッドは実装固有のもので、privateであるべきです。void
このpublicメソッドは実装固有のもので、privateであるべきです。protected void
このprotectedメソッドは実装固有のもので、privateであるべきです。protected JButton
コンボボックスのポップアップ部分の表示または非表示の制御に使用されるボタンを作成します。protected ComboBoxEditor
編集可能なコンボボックスで使用されるデフォルト・エディタを作成します。protected FocusListener
コンボボックスに追加されるFocusListener
を作成します。protected ItemListener
コンボボックスに追加されるItemListener
を作成します。protected KeyListener
コンボボックスに追加されるKeyListener
を作成します。protected LayoutManager
コンボボックスを構成するコンポーネントを管理するためのレイアウト・マネージャを作成します。protected ListDataListener
ComboBoxModel
に追加されるリスト・データ・リスナーを作成します。protected ComboPopup
コンボボックスのポップアップ部分を作成します。protected PropertyChangeListener
コンボボックスに追加されるPropertyChangeListener
を作成します。protected ListCellRenderer<Object>
編集不可能なコンボボックスで使用されるデフォルト・レンダラを作成します。static ComponentUI
BasicComboBoxUI
の新しいインスタンスを構築します。int
getBaseline
(JComponent c, int width, int height) ベースラインを返します。サイズの変化に合わせてコンポーネントのベースラインがどのように変化するかを示す列挙を返します。protected Dimension
現在のレンダラとフォントを使用するコンボボックスの、空のディスプレイ領域のデフォルト・サイズを返します。protected Dimension
ディスプレイ領域の、計算されたサイズを返します。protected Insets
JComboBoxからイン・セットを取得します。最小サイズは、ディスプレイ領域、インセットおよびボタンを足したサイズです。protected Dimension
getSizeForComponent
(Component comp) セル・レンダラとして使用された場合のコンポーネントのサイズを返します。protected void
集合コンボボックスを構成するコンポーネントを作成し、初期化します。protected void
JComboBoxに、デフォルトのカラー、フォント、レンダラ、およびエディタをインストールします。protected void
JComboBoxにキーボード・アクションを追加します。protected void
コンボボックスとそのモデルのためのリスナーを作成し、インストールします。boolean
isFocusTraversable
(JComboBox<?> c) JComboBoxが、フォーカスのトラバースが可能であるかどうかを判定します。protected boolean
isNavigationKey
(int keyCode) 指定されたkeyCodeが、ナビゲーション用のキーにマップされるかどうかを返します。boolean
isPopupVisible
(JComboBox<?> c) ポップアップが可視かどうかを判定します。void
paintCurrentValue
(Graphics g, Rectangle bounds, boolean hasFocus) 現在選択されている項目をペイントします。void
paintCurrentValueBackground
(Graphics g, Rectangle bounds, boolean hasFocus) 現在選択されている項目のバックグラウンドをペイントします。protected Rectangle
現在選択されている項目を描画するために予約されている領域を返します。void
このpublicメソッドは実装固有のもので、privateであるべきです。protected void
リストの次の項目を選択します。protected void
リストから1つ前の項目を選択します。void
setPopupVisible
(JComboBox<?> c, boolean v) ポップアップを非表示にします。protected void
ポップアップが表示されている場合は非表示にし、非表示になっている場合は表示します。void
このpublicメソッドは実装固有のもので、privateであるべきです。protected void
このprotectedメソッドは実装固有のもので、privateであるべきです。protected void
コンボ・ボックスを構成する集合コンポーネントは登録解除され、初期化解除されます。protected void
コンボボックスからデフォルトのカラー、フォント、レンダラ、およびエディタをアンインストールします。protected void
フォーカスInputMapおよびActionMapを削除します。protected void
インストールされたリスナーを、コンボボックスとそのモデルから削除します。クラス javax.swing.plaf.ComponentUIで宣言されたメソッド
contains, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getPreferredSize, installUI, paint, uninstallUI, update
-
フィールド詳細
-
comboBox
JComboBox
のインスタンス。 -
hasFocus
protected boolean hasFocusこのprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 -
listBox
このリストは、現在のアイテムをコンボ・ボックスに描画するためのものです。 -
currentValuePane
protected CellRendererPane currentValuePaneコンボ・ボックスで現在選択されているアイテムを描画するために使用されます。 ポップアップ・レンダリングとは関係ありません。 -
popup
protected ComboPopup popupポップアップを表示するために使用されるComboPopup
の実装。 -
editor
protected Component editor@{code ComboBoxEditor} が編集に使用するコンポーネント。 -
arrowButton
protected JButton arrowButtonポップアップを起動する矢印ボタン。 -
keyListener
protected KeyListener keyListenerこのprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、リスナー作成メソッドをオーバーライドしてください。- 関連項目:
-
focusListener
protected FocusListener focusListenerこのprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、リスナー作成メソッドをオーバーライドしてください。- 関連項目:
-
propertyChangeListener
protected PropertyChangeListener propertyChangeListenerこのprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、リスナー作成メソッドをオーバーライドしてください。 -
itemListener
protected ItemListener itemListenerこのprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、リスナー作成メソッドをオーバーライドしてください。- 関連項目:
-
popupMouseListener
protected MouseListener popupMouseListenerMouseListener
はイベントを待ち受けます。 -
popupMouseMotionListener
protected MouseMotionListener popupMouseMotionListenerMouseMotionListener
はイベントを待ち受けます。 -
popupKeyListener
protected KeyListener popupKeyListenerKeyListener
はイベントを待ち受けます。 -
listDataListener
protected ListDataListener listDataListenerこのprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、リスナー作成メソッドをオーバーライドしてください。- 関連項目:
-
isMinimumSizeDirty
protected boolean isMinimumSizeDirty最小優先サイズを再計算するためのフラグ。 -
cachedMinimumSize
protected Dimension cachedMinimumSizeキャッシュされた最小優先サイズ。 -
squareButton
protected boolean squareButtonコンボボックス・ボタンを正方形にするべきかどうかを示します。 正方形の場合は、幅と高さが等しくなり、両方ともコンボから適切なイン・セットを引いた高さに設定されます。- 導入されたバージョン:
- 1.7
-
padding
protected Insets paddingこれらのイン・セットは、「選択された」項目をコンボボックスに配置し、ペイントする際に、セル・レンダラ周囲のパディングとして機能します。 これらのイン・セットは、セル・レンダラによって指定されたイン・セットに追加されます。- 導入されたバージョン:
- 1.7
-
-
コンストラクタの詳細
-
BasicComboBoxUI
public BasicComboBoxUI()BasicComboBoxUI
を構築します。
-
-
メソッドの詳細
-
createUI
public static ComponentUI createUI(JComponent c) BasicComboBoxUI
の新しいインスタンスを構築します。- パラメータ:
c
- コンポーネント- 戻り値:
BasicComboBoxUI
の新しいインスタンス
-
installDefaults
protected void installDefaults()JComboBoxに、デフォルトのカラー、フォント、レンダラ、およびエディタをインストールします。 -
installListeners
protected void installListeners()コンボボックスとそのモデルのためのリスナーを作成し、インストールします。 このメソッドは、UIインストール時に呼び出されます。 -
uninstallDefaults
protected void uninstallDefaults()コンボボックスからデフォルトのカラー、フォント、レンダラ、およびエディタをアンインストールします。 -
uninstallListeners
protected void uninstallListeners()インストールされたリスナーを、コンボボックスとそのモデルから削除します。 このメソッドで削除されるリスナーの数とタイプは、installListeners
で追加されたものと同じであるべきです。 -
createPopup
protected ComboPopup createPopup()コンボボックスのポップアップ部分を作成します。- 戻り値:
ComboPopup
のインスタンス- 関連項目:
-
createKeyListener
protected KeyListener createKeyListener()コンボボックスに追加されるKeyListener
を作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。- 戻り値:
KeyListener
のインスタンスまたはnull
-
createFocusListener
protected FocusListener createFocusListener()コンボボックスに追加されるFocusListener
を作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。- 戻り値:
FocusListener
のインスタンス、またはnull
-
createListDataListener
protected ListDataListener createListDataListener()ComboBoxModel
に追加されるリスト・データ・リスナーを作成します。 このメソッドがnullを返す場合、コンボ・ボックス・モデルには追加されません。- 戻り値:
ListDataListener
のインスタンス、またはnull
-
createItemListener
protected ItemListener createItemListener()コンボボックスに追加されるItemListener
を作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。サブクラスは、このメソッドをオーバーライドして、独自のItemEventハンドラのインスタンスを返すことができます。
- 戻り値:
ItemListener
のインスタンス、またはnull
-
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener()コンボボックスに追加されるPropertyChangeListener
を作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。- 戻り値:
PropertyChangeListener
のインスタンス、またはnull
-
createLayoutManager
protected LayoutManager createLayoutManager()コンボボックスを構成するコンポーネントを管理するためのレイアウト・マネージャを作成します。- 戻り値:
- レイアウト・マネージャのインスタンス
-
createRenderer
protected ListCellRenderer<Object> createRenderer()編集不可能なコンボボックスで使用されるデフォルト・レンダラを作成します。 レンダラがsetRenderer
で明示的に設定されていない場合だけ、デフォルト・レンダラが使用されます。- 戻り値:
- コンボボックスに使用される
ListCellRender
- 関連項目:
-
createEditor
protected ComboBoxEditor createEditor()編集可能なコンボボックスで使用されるデフォルト・エディタを作成します。 エディタがsetEditor
で明示的に設定されていない場合だけ、デフォルト・エディタが使用されます。- 戻り値:
- コンボボックスに使用される
ComboBoxEditor
- 関連項目:
-
installComponents
protected void installComponents()集合コンボボックスを構成するコンポーネントを作成し、初期化します。 このメソッドは、UIインストール・プロセスの一部として呼び出されます。 -
uninstallComponents
protected void uninstallComponents()コンボ・ボックスを構成する集合コンポーネントは登録解除され、初期化解除されます。 このメソッドは、UIアンインストール・プロセスの一部として呼び出されます。 -
addEditor
public void addEditor()このpublicメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。 特定のエディタを実装するには、カスタムのComboBoxEditor
を作成してください。 -
removeEditor
public void removeEditor()このpublicメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。- 関連項目:
-
configureEditor
protected void configureEditor()protectedメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。- 関連項目:
-
unconfigureEditor
protected void unconfigureEditor()このprotectedメソッドは実装固有のもので、privateであるべきです。 呼び出しまたはオーバーライドしないでください。- 関連項目:
-
configureArrowButton
public void configureArrowButton()このpublicメソッドは実装固有のもので、privateであるべきです。 呼び出しまたはオーバーライドしないでください。- 関連項目:
-
unconfigureArrowButton
public void unconfigureArrowButton()このpublicメソッドは実装固有のもので、privateであるべきです。 呼び出しまたはオーバーライドしないでください。- 関連項目:
-
createArrowButton
protected JButton createArrowButton()コンボボックスのポップアップ部分の表示または非表示の制御に使用されるボタンを作成します。- 戻り値:
- ポップアップ制御を表すボタン
-
isPopupVisible
public boolean isPopupVisible(JComboBox<?> c) ポップアップが可視かどうかを判定します。- 定義:
isPopupVisible
、クラスComboBoxUI
- パラメータ:
c
-JComboBox
- 戻り値:
JComboBox
のポップアップが表示されている場合はtrue
-
setPopupVisible
public void setPopupVisible(JComboBox<?> c, boolean v) ポップアップを非表示にします。- 定義:
setPopupVisible
、クラスComboBoxUI
- パラメータ:
c
-JComboBox
v
- ポップアップの可視性を決定するboolean
-
isFocusTraversable
public boolean isFocusTraversable(JComboBox<?> c) JComboBoxが、フォーカスのトラバースが可能であるかどうかを判定します。 JComboBoxが編集可能な場合は、falseを返します。そうでない場合はtrueを返します。- 定義:
isFocusTraversable
、クラスComboBoxUI
- パラメータ:
c
-JComboBox
- 戻り値:
- 指定された
JComboBox
がトラバーサブルな場合はtrue
-
getMinimumSize
public Dimension getMinimumSize(JComponent c) 最小サイズは、ディスプレイ領域、インセットおよびボタンを足したサイズです。- オーバーライド:
getMinimumSize
、クラスComponentUI
- パラメータ:
c
- 最小サイズが照会されるコンポーネント。この引数は通常無視されるが、UIオブジェクトがステートレスで、複数のコンポーネントで共有されている場合は使用されることがある- 戻り値:
Dimension
オブジェクトまたはnull
- 関連項目:
-
getBaseline
public int getBaseline(JComponent c, int width, int height) ベースラインを返します。- オーバーライド:
getBaseline
、クラスComponentUI
- パラメータ:
c
- ベースラインが要求されるJComponent
width
- ベースラインを取得する幅height
- ベースラインを取得する高さ- 戻り値:
- ベースラインまたは0より小さい値(適切なベースラインがないことを示す)
- 例外:
NullPointerException
-c
がnull
である場合IllegalArgumentException
- 幅または高さが0より小さい場合- 導入されたバージョン:
- 1.6
- 関連項目:
-
getBaselineResizeBehavior
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c) サイズの変化に合わせてコンポーネントのベースラインがどのように変化するかを示す列挙を返します。- オーバーライド:
getBaselineResizeBehavior
、クラスComponentUI
- パラメータ:
c
- ベースラインのサイズ変更の動作を返すJComponent
- 戻り値:
- コンポーネント・サイズの変化に合わせてベースラインがどのように変化するかを示す列挙
- 例外:
NullPointerException
-c
がnull
である場合- 導入されたバージョン:
- 1.6
- 関連項目:
-
selectNextPossibleValue
protected void selectNextPossibleValue()リストの次の項目を選択します。 現在選択されている項目が最後の項目である場合は、選択はそのままです。 -
selectPreviousPossibleValue
protected void selectPreviousPossibleValue()リストから1つ前の項目を選択します。 現在選択されている項目が最初の項目である場合は、選択はそのままです。 -
toggleOpenClose
protected void toggleOpenClose()ポップアップが表示されている場合は非表示にし、非表示になっている場合は表示します。 -
rectangleForCurrentValue
protected Rectangle rectangleForCurrentValue()現在選択されている項目を描画するために予約されている領域を返します。- 戻り値:
- 現在選択されているアイテムを描画するために予約されている領域
-
getInsets
protected Insets getInsets()JComboBoxからイン・セットを取得します。- 戻り値:
- インセット
-
paintCurrentValue
現在選択されている項目をペイントします。- パラメータ:
g
-Graphics
のインスタンスbounds
- レンダリングする境界矩形hasFocus
- 焦点が合っている
-
paintCurrentValueBackground
現在選択されている項目のバックグラウンドをペイントします。- パラメータ:
g
-Graphics
のインスタンスbounds
- レンダリングする境界矩形hasFocus
- 焦点が合っている
-
getDefaultSize
protected Dimension getDefaultSize()現在のレンダラとフォントを使用するコンボボックスの、空のディスプレイ領域のデフォルト・サイズを返します。- 戻り値:
- 空のディスプレイ領域のサイズ
- 関連項目:
-
getDisplaySize
protected Dimension getDisplaySize()ディスプレイ領域の、計算されたサイズを返します。 ディスプレイ領域は、選択した項目が表示されるコンボボックスの一部です。 プロトタイプ・ディスプレイ値が設定されている場合、このメソッドはこれを使用します。項目数の多いコンボボックスについては、プロトタイプ・ディスプレイ値を使用して、ディスプレイ・サイズの計算を大幅に速めることをお勧めします。
- 戻り値:
- コンボボックスの項目から計算される、ディスプレイ領域のサイズ
- 関連項目:
-
getSizeForComponent
セル・レンダラとして使用された場合のコンポーネントのサイズを返します。- パラメータ:
comp
- チェックするComponent
- 戻り値:
- コンポーネントのサイズ
- 導入されたバージョン:
- 1.7
-
installKeyboardActions
protected void installKeyboardActions()JComboBoxにキーボード・アクションを追加します。 EnterキーおよびEscキーについてのアクションは、すでに提供されています。 必要に応じてアクションを追加してください。 -
uninstallKeyboardActions
protected void uninstallKeyboardActions()フォーカスInputMapおよびActionMapを削除します。
-