Spec-Zone.ru › OpenJavaFX 8
javafx.scene.control.cell

Класс TreeItemPropertyValueFactory<S,T>

java.lang.Object
  • javafx.scene.control.cell.TreeItemPropertyValueFactory<S,T>

Все реализуемые интерфейсы:

Callback<TreeTableColumn.CellDataFeatures<S,T>,ObservableValue<T>>



public class TreeItemPropertyValueFactory<S,T>
extends Object
implements Callback<TreeTableColumn.CellDataFeatures<S,T>,ObservableValue<T>>
Удобная реализация интерфейса Callback, предназначенная для использования внутри TreeTableColumn cell value factory. Пример использования этого класса:
TreeTableColumn<Person,String> firstNameCol = new TreeTableColumn<Person,String>("First Name");
 firstNameCol.setCellValueFactory(new TreeItemPropertyValueFactory<Person,String>("firstName"));
В этом примере строка "firstName" используется как ссылка на предполагаемый firstNameProperty() метод в классе Person (который является типом класса TreeTableView). Кроме того, этот метод должен возвращать экземпляр Property. Если такой метод найден, то TreeTableCell заполняется этим ObservableValue. Кроме того, TreeTableView автоматически добавит наблюдателя к возвращаемому значению, таким образом, любые изменения будут наблюдаться TreeTableView, что приведет к немедленному обновлению ячейки.

Если метод, соответствующий этому шаблону, не существует, поддерживается переход к попытке вызова get<property>() или is<property>() (то есть, getFirstName() или isFirstName() в примере выше). Если существует метод, соответствующий этому шаблону, возвращаемое значение из этого метода обертывается в ReadOnlyObjectWrapper и возвращается в TreeTableCell. Однако в этой ситуации TreeTableCell не сможет наблюдать за ObservableValue для изменений (как в первом подходе выше).

Для справки (и как отмечено в документации TreeTableColumn cell value factory), полная форма кода выше будет следующей:

TreeTableColumn<Person,String> firstNameCol = new TreeTableColumn<Person,String>("First Name");
 firstNameCol.setCellValueFactory(new Callback<CellDataFeatures<Person, String>, ObservableValue<String>>() {
     public ObservableValue<String> call(CellDataFeatures<Person, String> p) {
         // p.getValue() returns the TreeItem instance for a particular
         // TreeTableView row, and the second getValue() call returns the
         // Person instance contained within the TreeItem.
         return p.getValue().getValue().firstNameProperty();
     }
  });
 }

С тех пор:

JavaFX 8.0

См. также:

TreeTableColumn, TreeTableView, TreeTableCell, PropertyValueFactory, MapValueFactory

  • Краткое описание конструкторов

    Конструкторы
    Конструктор и описание
    TreeItemPropertyValueFactory(String property)
    Создаёт стандартный PropertyValueFactory для извлечения значения из заданного элемента строки TableView рефлективно, используя заданное имя свойства.
  • Краткое описание методов

    Все методыМетоды экземпляраКонкретные методы
    Модификатор и тип Метод и описание
    ObservableValue<T> call(TreeTableColumn.CellDataFeatures<S,T> param)
    Метод call вызывается при необходимости и получает один аргумент типа P, с требованием, что возвращается объект типа R.
    String getProperty()
    Возвращает имя свойства, предоставленное в конструкторе.
    • Методы, унаследованные от класса java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Подробное описание конструкторов

    • TreeItemPropertyValueFactory

      public TreeItemPropertyValueFactory(String property)
      Создаёт стандартный PropertyValueFactory для извлечения значения из заданного элемента строки TableView рефлективно, используя заданное имя свойства.

      Параметры:

      property - Имя свойства, с которым пытаться рефлективно извлечь соответствующее значение в заданном объекте.

  • Подробное описание методов

    • call

      public ObservableValue<T> call(TreeTableColumn.CellDataFeatures<S,T> param)
      Метод call вызывается при необходимости и получает один аргумент типа P, с требованием, что возвращается объект типа R.

      Указано в:

      call в интерфейсе Callback<TreeTableColumn.CellDataFeatures<S,T>,ObservableValue<T>>

      Параметры:

      param - Единственный аргумент, на основе которого должно быть определено возвращаемое значение.

      Возвращает:

      Объект типа R, который может быть определён на основе предоставленного значения параметра.

    • getProperty

      public final String getProperty()
      Возвращает имя свойства, предоставленное в конструкторе.

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API