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

Class TreeItemPropertyValueFactory<S,T>

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

All Implemented Interfaces:

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



public class TreeItemPropertyValueFactory<S,T>
extends Object
implements Callback<TreeTableColumn.CellDataFeatures<S,T>,ObservableValue<T>>
A convenience implementation of the Callback interface, designed specifically for use within the TreeTableColumn cell value factory. An example of how to use this class is:
TreeTableColumn<Person,String> firstNameCol = new TreeTableColumn<Person,String>("First Name");
 firstNameCol.setCellValueFactory(new TreeItemPropertyValueFactory<Person,String>("firstName"));
In this example, the "firstName" string is used as a reference to an assumed firstNameProperty() method in the Person class type (which is the class type of the TreeTableView). Additionally, this method must return a Property instance. If a method meeting these requirements is found, then the TreeTableCell is populated with this ObservableValue. In addition, the TreeTableView will automatically add an observer to the returned value, such that any changes fired will be observed by the TreeTableView, resulting in the cell immediately updating.

If no method matching this pattern exists, there is fall-through support for attempting to call get<property>() or is<property>() (that is, getFirstName() or isFirstName() in the example above). If a method matching this pattern exists, the value returned from this method is wrapped in a ReadOnlyObjectWrapper and returned to the TreeTableCell. However, in this situation, this means that the TreeTableCell will not be able to observe the ObservableValue for changes (as is the case in the first approach above).

For reference (and as noted in the TreeTableColumn cell value factory documentation), the long form of the code above would be the following:

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();
     }
  });
 }

Since:

JavaFX 8.0

See Also:

TreeTableColumn, TreeTableView, TreeTableCell, PropertyValueFactory, MapValueFactory

  • Constructor Summary

    Constructors
    Constructor and Description
    TreeItemPropertyValueFactory(String property)
    Creates a default PropertyValueFactory to extract the value from a given TableView row item reflectively, using the given property name.
  • Method Summary

    All MethodsInstance MethodsConcrete Methods
    Modifier and Type Method and Description
    ObservableValue<T> call(TreeTableColumn.CellDataFeatures<S,T> param)
    The call method is called when required, and is given a single argument of type P, with a requirement that an object of type R is returned.
    String getProperty()
    Returns the property name provided in the constructor.
    • Methods inherited from class java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Detail

    • TreeItemPropertyValueFactory

      public TreeItemPropertyValueFactory(String property)
      Creates a default PropertyValueFactory to extract the value from a given TableView row item reflectively, using the given property name.

      Parameters:

      property - The name of the property with which to attempt to reflectively extract a corresponding value for in a given object.

  • Method Detail

    • call

      public ObservableValue<T> call(TreeTableColumn.CellDataFeatures<S,T> param)
      The call method is called when required, and is given a single argument of type P, with a requirement that an object of type R is returned.

      Specified by:

      call in interface Callback<TreeTableColumn.CellDataFeatures<S,T>,ObservableValue<T>>

      Parameters:

      param - The single argument upon which the returned value should be determined.

      Returns:

      An object of type R that may be determined based on the provided parameter value.

    • getProperty

      public final String getProperty()
      Returns the property name provided in the constructor.

© 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