モジュール java.desktop
パッケージ javax.swing.plaf.basic

クラスBasicComboPopup

  • すべての実装されたインタフェース:
    ImageObserver, MenuContainer, Serializable, Accessible, MenuElement, ComboPopup
    直系の既知のサブクラス:
    MetalComboBoxUI.MetalComboPopup

    public class BasicComboPopup
    extends JPopupMenu
    implements ComboPopup
    これは、ComboPopupインタフェースの基本実装です。 このクラスは、コンボボックスのポップアップ部分のUIを表現します。

    すべてのイベント処理は、createxxxListener()の各メソッド、および内部クラスを使用して作成されたリスナー・クラスにより処理されます。 このクラスの動作を変更するには、createxxxListener()の各メソッドをオーバーライドした上で、独自のイベント・リスナーを提供するか、このクラスで提供されているイベント・リスナーからサブクラス化します。

    警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4以降、すべてのJavaBeans™用の長期間の格納サポートがjava.beansパッケージに追加されています。 XMLEncoderを参照してください。

    • フィールドの詳細

      • comboBox

        protected JComboBox<Object> comboBox
        JComboBoxのインスタンス。
      • list

        protected JList<Object> list
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 アクセス用のメソッドを代わりに使用します。
        関連項目:
        getList(), createList()
      • scroller

        protected JScrollPane scroller
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、生成メソッドを使用してください。
        関連項目:
        createScroller()
      • valueIsAdjusting

        protected boolean valueIsAdjusting
        以前はドキュメントに記載されていなかったこのフィールドは、Java 2プラットフォーム1.4以降では使用されません。
      • mouseMotionListener

        protected MouseMotionListener mouseMotionListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、アクセス用メソッドまたは生成用メソッドを使用してください。
        関連項目:
        getMouseMotionListener(), createMouseMotionListener()
      • mouseListener

        protected MouseListener mouseListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、アクセス用メソッドまたは生成用メソッドを使用してください。
        関連項目:
        getMouseListener(), createMouseListener()
      • keyListener

        protected KeyListener keyListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、アクセス用メソッドまたは生成用メソッドを使用してください。
        関連項目:
        getKeyListener(), createKeyListener()
      • listSelectionListener

        protected ListSelectionListener listSelectionListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりにcreateメソッドを使用します。
        関連項目:
        createListSelectionListener()
      • listMouseListener

        protected MouseListener listMouseListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりにcreateメソッドを使用します。
        関連項目:
        createListMouseListener()
      • listMouseMotionListener

        protected MouseMotionListener listMouseMotionListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、生成メソッドを使用してください。
        関連項目:
        createListMouseMotionListener()
      • propertyChangeListener

        protected PropertyChangeListener propertyChangeListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、生成メソッドを使用してください。
        関連項目:
        createPropertyChangeListener()
      • listDataListener

        protected ListDataListener listDataListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、生成メソッドを使用してください。
        関連項目:
        createListDataListener()
      • itemListener

        protected ItemListener itemListener
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。 代わりに、生成メソッドを使用してください。
        関連項目:
        createItemListener()
      • autoscrollTimer

        protected Timer autoscrollTimer
        このprotectedフィールドは実装固有のものです。 直接のアクセスやオーバーライドはしないでください。
      • hasEntered

        protected boolean hasEntered
        trueマウス・カーソルがポップアップにある場合。
      • isAutoScrolling

        protected boolean isAutoScrolling
        trueの場合、自動スクロールが有効になります。
      • scrollDirection

        protected int scrollDirection
        スクロールの方向。
      • SCROLL_UP

        protected static final int SCROLL_UP
        スクロール・アップの方向。
        関連項目:
        定数フィールド値
      • SCROLL_DOWN

        protected static final int SCROLL_DOWN
        スクロール・ダウンの方向。
        関連項目:
        定数フィールド値
    • コンストラクタの詳細

      • BasicComboPopup

        public BasicComboPopup​(JComboBox<Object> combo)
        BasicComboPopupの新しいインスタンスを構築します。
        パラメータ:
        combo - JComboBoxのインスタンス
    • メソッドの詳細

      • show

        public void show()
        ComboPopup.show()の実装です。
        定義:
        show 、インタフェース: ComboPopup
        オーバーライド:
        show 、クラス:  Component
      • hide

        public void hide()
        ComboPopup.hide()の実装です。
        定義:
        hide 、インタフェース: ComboPopup
        オーバーライド:
        hide 、クラス:  JComponent
      • getList

        public JList<Object> getList()
        ComboPopup.getList()の実装です。
        定義:
        getList 、インタフェース: ComboPopup
        戻り値:
        コンボ・ボックスにアイテムを描画するために使用されているリスト
      • uninstallingUI

        public void uninstallingUI()
        UIのアンインストール中に呼び出されます。 このポップアップはコンポーネント・ツリーに含まれないので、コンポーネント・ツリーのuninstallUI()は呼び出されません。 addComboBoxListeners()に追加されたリスナーを削除します。
        定義:
        uninstallingUI 、インタフェース: ComboPopup
      • uninstallComboBoxModelListeners

        protected void uninstallComboBoxModelListeners​(ComboBoxModel<?> model)
        コンボ・ボックス・モデルからリスナーを削除します。
        パラメータ:
        model - リスナーをインストールするコンボ・ボックス・モデル
        関連項目:
        installComboBoxModelListeners(javax.swing.ComboBoxModel<?>)
      • uninstallKeyboardActions

        protected void uninstallKeyboardActions()
        キーボード・アクションを登録解除します。
      • createMouseListener

        protected MouseListener createMouseListener()
        コンボボックス上でマウス・ボタンを押したり放したりするイベントを監視するリスナーを作成します。 警告: このメソッドをオーバーライドする場合、必ず既存の動作を維持するようにしてください。
        戻り値:
        コンボボックスに追加されるMouseListener、またはnull
      • createMouseMotionListener

        protected MouseMotionListener createMouseMotionListener()
        コンボボックスに追加されるマウス動作リスナーを作成します。 警告: このメソッドをオーバーライドする場合、必ず既存の動作を維持するようにしてください。
        戻り値:
        コンボボックスに追加されるMouseMotionListener、またはnull
      • createKeyListener

        protected KeyListener createKeyListener()
        コンボボックスに追加されるキー・リスナーを作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。
        戻り値:
        KeyListenerまたはnull
      • createListSelectionListener

        protected ListSelectionListener createListSelectionListener()
        ポップアップのリストの選択変更を待機するリスト選択リスナーを作成します。 このメソッドがnullを返す場合、ポップアップ・リストには追加されません。
        戻り値:
        ListSelectionListenerのインスタンス、またはnull
      • createListDataListener

        protected ListDataListener createListDataListener()
        ComboBoxModelに追加されるリスト・データ・リスナーを作成します。 このメソッドがnullを返す場合、コンボ・ボックス・モデルには追加されません。
        戻り値:
        ListDataListenerのインスタンス、またはnull
      • createListMouseListener

        protected MouseListener createListMouseListener()
        ポップアップのリストのマウス・イベントを監視するマウス・リスナーを作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。
        戻り値:
        MouseListenerのインスタンス、またはnull
      • createListMouseMotionListener

        protected MouseMotionListener createListMouseMotionListener()
        ポップアップのリストのマウス動作イベントを監視するマウス動作リスナーを作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。
        戻り値:
        MouseMotionListenerのインスタンス、またはnull
      • createPropertyChangeListener

        protected PropertyChangeListener createPropertyChangeListener()
        コンボボックスに追加されるPropertyChangeListenerを作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。
        戻り値:
        PropertyChangeListenerのインスタンス、またはnull
      • createItemListener

        protected ItemListener createItemListener()
        コンボボックスに追加されるItemListenerを作成します。 このメソッドがnullを返す場合、コンボボックスには追加されません。

        サブクラスは、このメソッドをオーバーライドして、独自のItemEventハンドラのインスタンスを返すことができます。

        戻り値:
        ItemListenerのインスタンス、またはnull
      • createList

        protected JList<Object> createList()
        コンボ・ボックス・モデルの項目を表示するために、ポップアップで使用されるJListを作成します。 UIクラス作成時に、このメソッドは呼び出されます。
        戻り値:
        コンボボックス項目の表示に使用されるJList
      • configureList

        protected void configureList()
        ポップアップのコンボボックス項目の保存に使用されるリストを設定します。 UIクラス作成時に、このメソッドは呼び出されます。
        関連項目:
        createList()
      • installListListeners

        protected void installListListeners()
        リスト・コントロールにリスナーを追加します。
      • createScroller

        protected JScrollPane createScroller()
        スクロール可能なリストを持つスクロール・ペインを作成します。
        戻り値:
        スクロール可能リストを格納するスクロール・ペイン
      • configureScroller

        protected void configureScroller()
        コンボ・ボックス・ポップアップ内にリストを持つ、スクロール可能な部分を設定します。 UIクラス作成時に、このメソッドは呼び出されます。
      • configurePopup

        protected void configurePopup()
        コンボボックスのポップアップ部分を設定します。 UIクラス作成時に、このメソッドは呼び出されます。
      • installComboBoxListeners

        protected void installComboBoxListeners()
        必要なリスナーをJComboBoxに追加します。
      • installComboBoxModelListeners

        protected void installComboBoxModelListeners​(ComboBoxModel<?> model)
        コンボ・ボックス・モデル上にリスナーをインストールします。 コンボ・ボックス・モデル上にインストールされたリスナーはすべて、uninstallComboBoxModelListenersで削除されるべきです。
        パラメータ:
        model - リスナーをインストールするコンボ・ボックス・モデル
        関連項目:
        uninstallComboBoxModelListeners(javax.swing.ComboBoxModel<?>)
      • installKeyboardActions

        protected void installKeyboardActions()
        キーボード・アクションを登録します。
      • isFocusTraversable

        public boolean isFocusTraversable()
        オーバーライドされ、無条件でfalseを返します。
        オーバーライド:
        isFocusTraversable 、クラス:  Component
        戻り値:
        このComponentがフォーカスを取得できる場合はtrue、そうでない場合はfalse
        関連項目:
        Component.setFocusable(boolean)
      • startAutoScrolling

        protected void startAutoScrolling​(int direction)
        protectedメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。
        パラメータ:
        direction - スクロールの方向
      • stopAutoScrolling

        protected void stopAutoScrolling()
        protectedメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。
      • autoScrollUp

        protected void autoScrollUp()
        protectedメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。
      • autoScrollDown

        protected void autoScrollDown()
        protectedメソッドは実装固有のもので、privateであるべきです。呼び出しまたはオーバーライドしないでください。
      • getAccessibleContext

        public AccessibleContext getAccessibleContext()
        BasicComboPopupに関連付けられたAccessibleContextを取得します。 AccessibleContextの親はComboBoxに設定されています。
        定義:
        getAccessibleContext、インタフェース: Accessible
        オーバーライド:
        getAccessibleContext 、クラス:  JPopupMenu
        戻り値:
        BasicComboPopupのAccessibleContext
        導入されたバージョン:
        1.5
      • delegateFocus

        protected void delegateFocus​(MouseEvent e)
        これは、イベント・ハンドラがポップアップが表示されたときにフォーカスを送信する場所を把握するのに役立つユーティリティ・メソッドです。 標準的な実装では、コンボボックスが編集可能な場合はエディタにフォーカスを委譲し、編集不可能な場合はJComboBoxに委譲します。
        パラメータ:
        e - マウス・イベント
      • togglePopup

        protected void togglePopup()
        ポップアップが非表示になっている場合は表示し、表示されていれば非表示にします。
      • convertMouseEvent

        protected MouseEvent convertMouseEvent​(MouseEvent e)
        マウス・イベントを変換します。
        パラメータ:
        e - マウス・イベント
        戻り値:
        変換されたマウス・イベント
      • getPopupHeightForRowCount

        protected int getPopupHeightForRowCount​(int maxRowCount)
        現在のListCellRendererに基づくポップアップの高さと、最大行数を取得します。
        パラメータ:
        maxRowCount - 行数
        戻り値:
        ポップアップの高さ
      • computePopupBounds

        protected Rectangle computePopupBounds​(int px,
                                               int py,
                                               int pw,
                                               int ph)
        コンボボックスの位置と画面の囲み境界に基づいて、コンボボックスのポップアップ部分の配置とサイズを計算します。 変換が必要ない場合、返される矩形の値はパラメータと同じになります。
        パラメータ:
        px - 開始のx位置
        py - 開始のy位置
        pw - 開始の幅
        ph - 開始の高さ
        戻り値:
        ポップアップの配置とサイズを表す矩形
      • updateListBoxSelectionForEvent

        protected void updateListBoxSelectionForEvent​(MouseEvent anEvent,
                                                      boolean shouldScroll)
        イベント・リスナーが使用するユーティリティ・メソッドです。 マウス・イベントを受けて、マウスの下にあるリスト項目のリスト選択を変更します。
        パラメータ:
        anEvent - マウス・イベント
        shouldScroll - trueリストをスクロールする必要がある場合。