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

クラスListCell<T>

  • 型パラメータ:
    T - ListCell内に含まれるアイテムの型。
    すべての実装されたインタフェース:
    Styleable, EventTarget, Skinnable
    直系の既知のサブクラス:
    CheckBoxListCell, ChoiceBoxListCell, ComboBoxListCell, TextFieldListCell


    public class ListCell<T>
    extends IndexedCell<T>

    ListViewインスタンス内で使用されるCell型。 CellおよびIndexedCellに定義されているAPIに加えて、ListCellはListViewにより強く結合され、編集イベントなどをより適切にサポートできます。

    ListViewは、どのセルが選択されているかを示す選択と、特定のListViewの現在のフォーカス所有者を示すフォーカスを保持します。 プロパティごとに、各ListCellは、その特定のセルが選択されているか、フォーカスされているかを反映するブールを保持します。 このことを実現するために、各ListCellにはそれが使用されているListViewに対する逆方向の参照があります。 各ListCellは、1つのListViewにのみ属します。

    ListViewなどの仮想コントロールの場合、セルにフォーカスがあっても、アプリケーション・フォーカスと同じ意味ではないことに注意してください。 ListCellにフォーカスがある場合は、所有するListViewに実際にフォーカスが含まれているという状況において、そのセルがキーボード・イベントを受け取ることを表しているのみです。 セルのgraphicプロパティにノードが設定されている場合は、通常想定されるとおり、このノードがフォーカスをリクエストして取得しても問題ありません。

    導入されたバージョン:
    JavaFX 2.0
    • コンストラクタの詳細

      • ListCell

        public ListCell​()
        list-cellというデフォルトのスタイル・クラスでデフォルトのListCellを作成します。
    • メソッドの詳細

      • getListView

        public final ListView<T> getListView​()
        プロパティlistViewの値を取得します。
        プロパティの説明:
        このCellに関連付けられているListView。
      • createDefaultSkin

        protected Skin<?> createDefaultSkin​()
        このコントロールのデフォルト・スキンの新しいインスタンスを作成します。 これは、CSS -fx-skinを介してスキンが提供されていない場合にコントロール用のスキンを作成するために、または setSkin(...)を使用してサブクラスで明示的に設定するために呼び出されます。
        オーバーライド:
        createDefaultSkin 、クラス: Control
        戻り値:
        このコントロールのデフォルト・スキンの新しいインスタンス。 nullの場合、コントロールにはスキンがありません(Cssで提供されている場合を除く)。
      • startEdit

        public void startEdit​()
        この関数を呼び出して、セルが編集可能な場合に、非編集状態から編集状態に遷移します。 セルがすでに編集状態である場合は、その状態のままになります。
        オーバーライド:
        startEdit 、クラス: Cell<T>
      • commitEdit

        public void commitEdit​(T newValue)
        セル編集ユーザー・インタフェースのユーザー操作要件に基づいて適切な場合に、この関数を呼び出して、次の2つのことを実行します。
        1. 適切なイベントを起動してバッキングUIコントロール(ListViewなど)に戻します。 これにより、この編集をプッシュして関連データ・ソースやプロパティに戻すプロセスが開始されます(ただし、正常終了は保証されません。つまり、使用される特定の編集コミット・ハンドラに依存します)。 詳細は、UIコントロール・クラスのjavadocを参照してください。
        2. 編集状態から非編集状態への遷移を開始します。

        一般的に、カスタム・セル実装でこのメソッドをオーバーライドする必要はありません。必要に応じてこのメソッドを呼び出すのみで十分です(たとえば、ユーザーが[Enter]キーを押したときにcell.commitEdit(converter.fromString(textField.getText()));などを実行できます)。

        オーバーライド:
        commitEdit 、クラス: Cell<T>
        パラメータ:
        newValue - エンド・ユーザーが入力した値であり、ユーザー・インタフェースを支援するデータ・ソース、およびUIコントロールのインストール編集コミット・ハンドラで指定された関連する方法で保持される必要があります。
      • cancelEdit

        public void cancelEdit​()
        この関数を呼び出して、ユーザーによる入力を保存せずに、編集状態から非編集状態に遷移します。
        オーバーライド:
        cancelEdit 、クラス: Cell<T>
      • updateListView

        public final void updateListView​(ListView<T> listView)
        このセルに関連付けられたListViewを更新します。 ノート: この機能は、主に新しいスキンを実装する者が専門家によって使用されることを意図しています。 開発者や設計者がこの機能に直接アクセスするのは一般的ではありません。
        パラメータ:
        listView - このセルに関連付けられたListView
      • queryAccessibleAttribute

        public Object queryAccessibleAttribute​(AccessibleAttribute attribute,
                                               Object... parameters)
        このメソッドは、属性の値をリクエストするためにアシスティブ・テクノロジによって呼び出されます。

        このメソッドは一般に、特定の役割に必要な属性を実装するためにサブクラスによってオーバーライドされます。
        特定の属性が処理されない場合は、スーパークラスの実装を呼び出す必要があります。

        オーバーライド:
        queryAccessibleAttribute、クラス: Control
        パラメータ:
        attribute - リクエストされた属性
        parameters - オプションのパラメータ・リスト
        戻り値:
        リクエストされた属性の値
        関連項目:
        AccessibleAttribute
      • executeAccessibleAction

        public void executeAccessibleAction​(AccessibleAction action,
                                            Object... parameters)
        このメソッドは、引数で指定されたアクションの実行をリクエストするためにアシスティブ・テクノロジによって呼び出されます。

        このメソッドは一般に、特定の役割に必要なアクションを実装するためにサブクラスによってオーバーライドされます。
        特定のアクションが処理されない場合は、スーパークラスの実装を呼び出す必要があります。

        オーバーライド:
        executeAccessibleAction、クラス: Control
        パラメータ:
        action - 実行するアクション
        parameters - オプションのパラメータ・リスト
        関連項目:
        「AccessibleAction」