モジュール javafx.controls
パッケージ javafx.scene.control

クラスSelectionModel<T>

  • 型パラメータ:
    T - 選択できるコントロールに含まれているアイテムのタイプ。
    直系の既知のサブクラス:
    MultipleSelectionModel, SingleSelectionModel


    public abstract class SelectionModel<T>
    extends Object
    SelectionModelは、一貫したAPIを提供して選択を維持するためにUIコントロールが使用する抽象クラスです。
    導入されたバージョン:
    JavaFX 2.0
    • プロパティのサマリー

      プロパティ 
      プロパティ 説明
      ReadOnlyIntegerProperty selectedIndex
      選択モデルの現在選択されている索引値を示すために使用される選択された索引プロパティを参照します。
      ReadOnlyObjectProperty<T> selectedItem
      選択モデルの現在選択されているアイテムを示すために使用される選択されたアイテム・プロパティを参照します。
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      SelectionModel​()
      デフォルトのSelectionModelインスタンスを作成します。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      abstract void clearAndSelect​(int index)
      選択をクリアしてから指定されたインデックスに選択を設定するメソッドです。
      abstract void clearSelection​()
      すべての選択されたインデックスの選択モデルをクリアします。
      abstract void clearSelection​(int index)
      このメソッドは、指定されたインデックスのアイテムの選択をクリアします。
      int getSelectedIndex​()
      このモデルの現在選択されているインデックスを示す整数値を返します。
      T getSelectedItem​()
      (選択されたインデックス位置にある)現在選択されているオブジェクトを返します。
      abstract boolean isEmpty​()
      このメソッドは、選択されているインデックス/アイテムがあるかどうかをテストするために使用できます。
      abstract boolean isSelected​(int index)
      指定されたインデックスがこのSelectionModelで現在選択されているかどうかを通知するためのコンビニエンス・メソッドです。
      abstract void select​(int index)
      インデックスが有効な範囲内(つまり、ゼロ以上、基礎となるデータ・モデルのアイテムの合計数未満)にあると想定して、選択モデルの指定されたインデックスを選択します。
      abstract void select​(T obj)
      このメソッドは、指定されたオブジェクトが含まれているインデックスの選択を試みます。
      ReadOnlyIntegerProperty selectedIndexProperty​()
      選択モデルの現在選択されている索引値を示すために使用される選択された索引プロパティを参照します。
      ReadOnlyObjectProperty<T> selectedItemProperty​()
      選択モデルの現在選択されているアイテムを示すために使用される選択されたアイテム・プロパティを参照します。
      abstract void selectFirst​()
      このメソッドは、コントロール内の最初のインデックスの選択を試みます。
      abstract void selectLast​()
      このメソッドは、コントロール内の最後のインデックスの選択を試みます。
      abstract void selectNext​()
      このメソッドは、現在フォーカスされているインデックスの直後にあるインデックスの選択を試みます。
      abstract void selectPrevious​()
      このメソッドは、現在フォーカスされているインデックスの直前にあるインデックスの選択を試みます。
      protected void setSelectedIndex​(int value)
      プロパティselectedIndexの値を設定します。
      protected void setSelectedItem​(T value)
      プロパティselectedItemの値を設定します。
    • プロパティの詳細

      • selectedIndex

        public final ReadOnlyIntegerProperty selectedIndexProperty

        選択モデルの現在選択されている索引値を示すために使用される選択された索引プロパティを参照します。 選択されたインデックスは、選択が行われていないことを表す-1、または基礎となるデータ・モデル・サイズの範囲内の整数値です。

        選択されたインデックス・プロパティは、選択モデルで単一選択のみが許可されている場合に最も一般的に使用されますが、複数選択モードでも同様に適用できます。 このモードでは、選択されたインデックスは、常に最後に行われた選択を表します。

        複数選択の場合はListChangeListenerMultipleSelectionModel.getSelectedIndices()によって返されたコレクションに追加して、選択が変更されるたびに通知を受け取ることができ、これは単一選択の場合も機能します。

        関連項目:
        getSelectedIndex()setSelectedIndex(int)
      • selectedItem

        public final ReadOnlyObjectProperty<T> selectedItemProperty

        選択モデルの現在選択されているアイテムを示すために使用される選択されたアイテム・プロパティを参照します。 選択されたアイテムは、選択が行われていないことを表すnull、または選択モデルが関連付けられているコントロールの基礎となるデータ・モデルから取得されたオブジェクトです。

        選択されたアイテム・プロパティは、選択モデルが単一選択に設定されている場合に最も一般的に使用されますが、複数選択モードでも同様に適用できます。 このモードでは、選択されたアイテムは、常に最後に行われた選択を表します。

        関連項目:
        getSelectedItem()setSelectedItem(T)
    • コンストラクタの詳細

      • SelectionModel

        public SelectionModel​()
        デフォルトのSelectionModelインスタンスを作成します。
    • メソッドの詳細

      • selectedIndexProperty

        public final ReadOnlyIntegerProperty selectedIndexProperty​()

        選択モデルの現在選択されている索引値を示すために使用される選択された索引プロパティを参照します。 選択されたインデックスは、選択が行われていないことを表す-1、または基礎となるデータ・モデル・サイズの範囲内の整数値です。

        選択されたインデックス・プロパティは、選択モデルで単一選択のみが許可されている場合に最も一般的に使用されますが、複数選択モードでも同様に適用できます。 このモードでは、選択されたインデックスは、常に最後に行われた選択を表します。

        複数選択の場合はListChangeListenerMultipleSelectionModel.getSelectedIndices()によって返されたコレクションに追加して、選択が変更されるたびに通知を受け取ることができ、これは単一選択の場合も機能します。

        関連項目:
        getSelectedIndex()setSelectedIndex(int)
      • setSelectedIndex

        protected final void setSelectedIndex​(int value)
        プロパティselectedIndexの値を設定します。
        プロパティの説明:

        選択モデルの現在選択されている索引値を示すために使用される選択された索引プロパティを参照します。 選択されたインデックスは、選択が行われていないことを表す-1、または基礎となるデータ・モデル・サイズの範囲内の整数値です。

        選択されたインデックス・プロパティは、選択モデルで単一選択のみが許可されている場合に最も一般的に使用されますが、複数選択モードでも同様に適用できます。 このモードでは、選択されたインデックスは、常に最後に行われた選択を表します。

        複数選択の場合はListChangeListenerMultipleSelectionModel.getSelectedIndices()によって返されたコレクションに追加して、選択が変更されるたびに通知を受け取ることができ、これは単一選択の場合も機能します。

      • getSelectedIndex

        public final int getSelectedIndex​()

        このモデルの現在選択されているインデックスを示す整数値を返します。 複数のアイテムが選択されている場合は、最後に行われた選択が返されます。

        戻り値はある時点のスナップショットです。選択されたインデックスに変更がないか選択モデルを監視する場合は、ChangeListenerを次のように追加できます。

        
         SelectionModel sm = ...;
         InvalidationListener listener = ...;
         sm.selectedIndexProperty().addListener(listener);
         
        戻り値:
        選択されたインデックス
      • selectedItemProperty

        public final ReadOnlyObjectProperty<T> selectedItemProperty​()

        選択モデルの現在選択されているアイテムを示すために使用される選択されたアイテム・プロパティを参照します。 選択されたアイテムは、選択が行われていないことを表すnull、または選択モデルが関連付けられているコントロールの基礎となるデータ・モデルから取得されたオブジェクトです。

        選択されたアイテム・プロパティは、選択モデルが単一選択に設定されている場合に最も一般的に使用されますが、複数選択モードでも同様に適用できます。 このモードでは、選択されたアイテムは、常に最後に行われた選択を表します。

        関連項目:
        getSelectedItem()setSelectedItem(T)
      • setSelectedItem

        protected final void setSelectedItem​(T value)
        プロパティselectedItemの値を設定します。
        プロパティの説明:

        選択モデルの現在選択されているアイテムを示すために使用される選択されたアイテム・プロパティを参照します。 選択されたアイテムは、選択が行われていないことを表すnull、または選択モデルが関連付けられているコントロールの基礎となるデータ・モデルから取得されたオブジェクトです。

        選択されたアイテム・プロパティは、選択モデルが単一選択に設定されている場合に最も一般的に使用されますが、複数選択モードでも同様に適用できます。 このモードでは、選択されたアイテムは、常に最後に行われた選択を表します。

      • getSelectedItem

        public final T getSelectedItem​()
        (選択されたインデックス位置にある)現在選択されているオブジェクトを返します。 複数のアイテムが選択されている場合は、getSelectedIndex()によって返されたインデックス(常に最後に選択されたアイテムへのインデックス)に含まれているオブジェクトが返されます。

        戻り値はある時点のスナップショットです。選択されたアイテムに変更がないか選択モデルを監視する場合は、ChangeListenerを次のように追加できます。

        
         SelectionModel sm = ...;
         InvalidationListener listener = ...;
         sm.selectedItemProperty().addListener(listener);
         
        戻り値:
        選択したアイテム
      • clearAndSelect

        public abstract void clearAndSelect​(int index)
        選択をクリアしてから指定されたインデックスに選択を設定するメソッドです。 このメソッドの目的は、clearSelection()を最初に呼び出す必要性を回避すること、つまり、選択されたインデックスが一時的に-1に設定されることが、selected indexプロパティをリスニングしているオブザーバに認識されないようにすることです。
        パラメータ:
        index - この選択モデルで唯一選択されたインデックスにする必要があるインデックス。
      • select

        public abstract void select​(int index)

        インデックスが有効な範囲内(つまり、ゼロ以上、基礎となるデータ・モデルのアイテムの合計数未満)にあると想定して、選択モデルの指定されたインデックスを選択します。

        このモデルですでに1つ以上のインデックスが選択されている場合は、このメソッドを呼び出してもこれらの選択はクリアされません。クリアするには、最初にclearSelection()を呼び出す必要があります。

        インデックスがすでに選択されている場合は、再度選択されることも、選択が解除されることもありません。 ただし、複数選択が実装されている場合は、すでに選択されているインデックスに対してselectを呼び出すと、そのインデックスが新しい選択されたインデックス(getSelectedIndex()によって返されるインデックス)になります。

        パラメータ:
        index - 選択モデルで選択するアイテムの位置。
      • select

        public abstract void select​(T obj)

        このメソッドは、指定されたオブジェクトが含まれているインデックスの選択を試みます。 値が指定されたオブジェクトと等しいアイテムが見つかるまで、基礎となるデータ・モデルが反復されます。 この時点で反復は終了します。つまり、このメソッドでは複数のインデックスが選択されません。

        パラメータ:
        obj - 基礎となるデータ・モデルで選択を試みるオブジェクト。
      • clearSelection

        public abstract void clearSelection​(int index)

        このメソッドは、指定されたインデックスのアイテムの選択をクリアします。 指定されたインデックスが選択されない場合は、何も行われません。

        パラメータ:
        index - 選択を解除する選択されたアイテム。
      • clearSelection

        public abstract void clearSelection​()

        すべての選択されたインデックスの選択モデルをクリアします。

      • isSelected

        public abstract boolean isSelected​(int index)

        指定されたインデックスがこのSelectionModelで現在選択されているかどうかを通知するためのコンビニエンス・メソッドです。 機能的にはgetSelectedIndices().contains(index)の呼出しと同等です。

        パラメータ:
        index - 現在選択されているかどうかをチェックするインデックス。
        戻り値:
        指定されたインデックスが選択されている場合はtrue、それ以外の場合はfalse。
      • isEmpty

        public abstract boolean isEmpty​()
        このメソッドは、選択されているインデックス/アイテムがあるかどうかをテストするために使用できます。 選択されたアイテムがない場合はtrueを返し、ある場合はfalseを返します。
        戻り値:
        選択されたアイテムがない場合はtrueを返し、ある場合はfalseを返します。
      • selectPrevious

        public abstract void selectPrevious​()

        このメソッドは、現在フォーカスされているインデックスの直前にあるインデックスの選択を試みます。 clearSelectionを最初に呼び出さない場合、このメソッドの結果として、直前のインデックスが選択され、現在選択されているその他のインデックスの選択は保持されます。

        このメソッドの呼出しは、次の場合にのみ成功します。

        • 現在、先頭/フォーカス・インデックスが存在します。
        • 先頭/フォーカス・インデックスがコントロールの最初のインデックスではありません。
        • 直前のインデックスがまだ選択されていません。

        これらの条件のいずれかがfalseの場合、選択イベントは発生しません。

      • selectNext

        public abstract void selectNext​()

        このメソッドは、現在フォーカスされているインデックスの直後にあるインデックスの選択を試みます。 clearSelectionを最初に呼び出さない場合、このメソッドの結果として、次のインデックスが選択され、現在選択されているその他のインデックスの選択は保持されます。

        このメソッドの呼出しは、次の場合にのみ成功します。

        • 現在、先頭/フォーカス・インデックスが存在します。
        • 先頭/フォーカス・インデックスがコントロールの最後のインデックスではありません。
        • 次のインデックスがまだ選択されていません。

        これらの条件のいずれかがfalseの場合、選択イベントは発生しません。

      • selectFirst

        public abstract void selectFirst​()

        このメソッドは、コントロール内の最初のインデックスの選択を試みます。 clearSelectionを最初に呼び出さない場合、このメソッドの結果として、最初のインデックスが選択され、現在選択されているその他のインデックスの選択は保持されます。

        最初のインデックスがすでに選択されている場合は、このメソッドを呼び出しても、結果は得られず、選択イベントも発生しません。

      • selectLast

        public abstract void selectLast​()

        このメソッドは、コントロール内の最後のインデックスの選択を試みます。 clearSelectionを最初に呼び出さない場合、このメソッドの結果として、最後のインデックスが選択され、現在選択されているその他のインデックスの選択は保持されます。

        最後のインデックスがすでに選択されている場合は、このメソッドを呼び出しても、結果は得られず、選択イベントも発生しません。