Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.controls
Пакет javafx.scene.control

Класс TableColumn<S,​T>

  • java.lang.Object
    • javafx.scene.control.TableColumnBase<S,​T>
      • javafx.scene.control.TableColumn<S,​T>
  • Параметры типа:
    S - Тип обобщённого типа TableView (т.е. S == TableView<S>)
    T - Тип содержимого во всех ячейках в этом TableColumn.
    Все реализованные интерфейсы:
    Styleable, EventTarget
    public class TableColumn<S,​T>
    extends TableColumnBase<S,​T>
    implements EventTarget
    A TableView состоит из нескольких экземпляров TableColumn. Каждый TableColumn в таблице отвечает за отображение (и редактирование) содержимого этого столбца. Помимо ответственности за отображение и редактирование данных для одного столбца, TableColumn также содержит необходимые свойства для:
    • Изменения размера (используя minWidth/prefWidth/maxWidth и width свойства)
    • Переключения видимости с помощью visibility
    • Отображения header text
    • Отображения любых nested columns, которые он может содержать
    • Наличие контекстного меню (context menu) при нажатии правой кнопкой мыши на области заголовка столбца
    • Сортировки содержимого таблицы (с помощью comparator, sortable и sortType)
    При создании экземпляра TableColumn, возможно, два наиболее важных свойства для установки - это текст столбца (text) (что отображать в области заголовка столбца) и значение ячейки столбца (cell value factory) (которое используется для заполнения отдельных ячеек в столбце). Это можно достичь с помощью некоторой вариации следующего кода:
     
     ObservableList<Person> data = ...
     TableView<Person> tableView = new TableView<Person>(data);
    
     TableColumn<Person,String> firstNameCol = new TableColumn<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 Person instance for a particular TableView row
             return p.getValue().firstNameProperty();
         }
      });
     
     tableView.getColumns().add(firstNameCol);}
    Этот подход предполагает, что объект, возвращаемый p.getValue(), имеет JavaFX ObservableValue, который можно просто вернуть. Преимущество этого в том, что TableView будет внутренне создавать привязки, чтобы при изменении возвращаемого ObservableValue содержимое ячейки автоматически обновлялось.

    В ситуациях, когда TableColumn должен взаимодействовать с классами, созданными до JavaFX, или которые вообще не хотят использовать JavaFX-API для свойств, можно обернуть возвращаемое значение в экземпляр ReadOnlyObjectWrapper. Например:

     
     firstNameCol.setCellValueFactory(new Callback<CellDataFeatures<Person, String>, ObservableValue<String>>() {
         public ObservableValue<String> call(CellDataFeatures<Person, String> p) {
             return new ReadOnlyObjectWrapper(p.getValue().getFirstName());
         }
      });
    Надеемся, что со временем будут разработаны и доступны для разработчиков удобные фабрики для значений ячеек. На момент выпуска JavaFX 2.0 существует один такой удобный класс: PropertyValueFactory. Этот класс избавляет от необходимости писать код выше, вместо этого полагаясь на рефлексию для поиска заданного свойства по строке. Обратитесь к документации класса PropertyValueFactory для получения дополнительной информации о том, как использовать это с TableColumn. Наконец, для более подробного ознакомления с использованием TableColumn, см. документацию класса TableView.
    С момента:
    JavaFX 2.0
    См. также:
    TableView, TableCell, TablePosition
  • Краткое описание свойств

    Свойства
    Тип Свойство Описание
    ObjectProperty<Callback<TableColumn<S,​T>,​TableCell<S,​T>>> cellFactory
    Фабрика ячеек для всех ячеек в этом столбце.
    ObjectProperty<Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>>> cellValueFactory
    Необходимо установить фабрику значений ячеек, чтобы указать, как заполнять все ячейки в одном TableColumn.
    ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCancel
    Этот обработчик событий будет вызываться, когда пользователь отменяет редактирование ячейки.
    ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCommit
    Этот обработчик событий будет вызываться, когда пользователь успешно подтвердит редактирование.
    ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditStart
    Этот обработчик событий будет вызываться, когда пользователь успешно начнёт редактирование.
    ObjectProperty<TableColumn.SortType> sortType
    Используется для указания, должен ли этот столбец (если он входит в порядок сортировки, см. TableView.getSortOrder() для получения более подробной информации) сортироваться по возрастанию или убыванию.
    ReadOnlyObjectProperty<TableView<S>> tableView
    TableView, к которому принадлежит этот TableColumn.
    • Свойства, унаследованные от класса javafx.scene.control.TableColumnBase

      comparator, contextMenu, editable, graphic, id, maxWidth, minWidth, parentColumn, prefWidth, reorderable, resizable, sortable, sortNode, style, text, visible, width
  • Краткое описание вложенных классов

    Вложенные классы
    Модификатор и тип Класс Описание
    static class  TableColumn.CellDataFeatures<S,​T>
    Вспомогательный класс, используемый в TableColumn в качестве обертки для предоставления всей необходимой информации для определённой Cell.
    static class  TableColumn.CellEditEvent<S,​T>
    Событие, которое срабатывает, когда пользователь выполняет редактирование в ячейке таблицы.
    static class  TableColumn.SortType
    Перечисление, определяющее тип сортировки, применяемый к конкретному столбцу.
  • Краткое описание полей

    Поля
    Модификатор и тип Поле Описание
    static Callback<TableColumn<?,​?>,​TableCell<?,​?>> DEFAULT_CELL_FACTORY
    Если для экземпляра TableColumn не указана cellFactory, то эта будет использоваться по умолчанию.
    • Поля, унаследованные от класса javafx.scene.control.TableColumnBase

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

    Конструкторы
    Конструктор Описание
    TableColumn()
    Создаёт TableColumn по умолчанию с фабрикой ячеек, компаратором и реализацией onEditCommit по умолчанию.
    TableColumn​(String text)
    Создаёт TableColumn с текстом, заданным переданной строкой, с фабрикой ячеек, компаратором и реализацией onEditCommit по умолчанию.
  • Краткое описание методов

    Все методыСтатические методыМетоды экземпляраКонкретные методы
    Модификатор и тип Метод Описание
    ObjectProperty<Callback<TableColumn<S,​T>,​TableCell<S,​T>>> cellFactoryProperty()
    Фабрика ячеек для всех ячеек в этом столбце.
    ObjectProperty<Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>>> cellValueFactoryProperty()
    Фабрика значений ячеек должна быть установлена для указания, как заполнить все ячейки в пределах одного TableColumn.
    static <S,​T>
    EventType<TableColumn.CellEditEvent<S,​T>>
    editAnyEvent()
    Родительское событие для любого события редактирования TableColumn.
    static <S,​T>
    EventType<TableColumn.CellEditEvent<S,​T>>
    editCancelEvent()
    Указывает, что редактирование было отменено, что означает, что никакие изменения не должны быть внесены в исходный источник данных.
    static <S,​T>
    EventType<TableColumn.CellEditEvent<S,​T>>
    editCommitEvent()
    Указывает, что редактирование было подтверждено пользователем, что означает, что изменение должно быть внесено в исходный источник данных, чтобы отразить новые данные.
    static <S,​T>
    EventType<TableColumn.CellEditEvent<S,​T>>
    editStartEvent()
    Указывает, что пользователь выполнил какое-либо взаимодействие для запуска события редактирования, или, как альтернатива, метод TableView.edit(int, javafx.scene.control.TableColumn) был вызван.
    Callback<TableColumn<S,​T>,​TableCell<S,​T>> getCellFactory()
    Получает значение свойства cellFactory.
    ObservableValue<T> getCellObservableValue​(int index)
    Попытка вернуть ObservableValue<T> для элемента в данном индексе (который имеет тип S).
    ObservableValue<T> getCellObservableValue​(S item)
    Попытка вернуть ObservableValue<T> для данного элемента (который имеет тип S).
    Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>> getCellValueFactory()
    Получает значение свойства cellValueFactory.
    static List<CssMetaData<? extends Styleable,​?>> getClassCssMetaData()
    ObservableList<TableColumn<S,​?>> getColumns()
    Это позволяет поддерживать вложенные столбцы, что может быть полезно для группировки связанных данных.
    List<CssMetaData<? extends Styleable,​?>> getCssMetaData()
    CssMetaData для данного Styleable.
    EventHandler<TableColumn.CellEditEvent<S,​T>> getOnEditCancel()
    Получает значение свойства onEditCancel.
    EventHandler<TableColumn.CellEditEvent<S,​T>> getOnEditCommit()
    Получает значение свойства onEditCommit.
    EventHandler<TableColumn.CellEditEvent<S,​T>> getOnEditStart()
    Получает значение свойства onEditStart.
    TableColumn.SortType getSortType()
    Получает значение свойства sortType.
    Node getStyleableNode()
    Возвращает узел, представляющий этот объект Styleable.
    Styleable getStyleableParent()
    Возвращает родителя данного Styleable, или null, если родителя нет.
    TableView<S> getTableView()
    Получает значение свойства tableView.
    String getTypeSelector()
    Тип этого Styleable, который будет использоваться в сопоставлении селекторов.
    ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCancelProperty()
    Обработчик событий будет вызван, когда пользователь отменяет редактирование ячейки.
    ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCommitProperty()
    Обработчик событий будет вызван, когда пользователь успешно подтвердит редактирование.
    ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditStartProperty()
    Обработчик событий будет вызван, когда пользователь успешно инициирует редактирование.
    void setCellFactory​(Callback<TableColumn<S,​T>,​TableCell<S,​T>> value)
    Устанавливает значение свойства cellFactory.
    void setCellValueFactory​(Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>> value)
    Устанавливает значение свойства cellValueFactory.
    void setOnEditCancel​(EventHandler<TableColumn.CellEditEvent<S,​T>> value)
    Устанавливает значение свойства onEditCancel.
    void setOnEditCommit​(EventHandler<TableColumn.CellEditEvent<S,​T>> value)
    Устанавливает значение свойства onEditCommit.
    void setOnEditStart​(EventHandler<TableColumn.CellEditEvent<S,​T>> value)
    Устанавливает значение свойства onEditStart.
    void setSortType​(TableColumn.SortType value)
    Устанавливает значение свойства sortType.
    ObjectProperty<TableColumn.SortType> sortTypeProperty()
    Указывает, должен ли этот столбец, если он входит в порядок сортировки (см. TableView.getSortOrder() для более подробной информации), быть отсортирован по возрастанию или убыванию.
    ReadOnlyObjectProperty<TableView<S>> tableViewProperty()
    TableView, к которому принадлежит этот TableColumn.
    • Методы, унаследованные от класса javafx.scene.control.TableColumnBase

      addEventHandler, buildEventDispatchChain, comparatorProperty, contextMenuProperty, editableProperty, getCellData, getCellData, getComparator, getContextMenu, getGraphic, getId, getMaxWidth, getMinWidth, getParentColumn, getPrefWidth, getProperties, getPseudoClassStates, getSortNode, getStyle, getStyleClass, getText, getUserData, getWidth, graphicProperty, hasProperties, idProperty, isEditable, isReorderable, isResizable, isSortable, isVisible, maxWidthProperty, minWidthProperty, parentColumnProperty, prefWidthProperty, removeEventHandler, reorderableProperty, resizableProperty, setComparator, setContextMenu, setEditable, setGraphic, setId, setMaxWidth, setMinWidth, setPrefWidth, setReorderable, setResizable, setSortable, setSortNode, setStyle, setText, setUserData, setVisible, sortableProperty, sortNodeProperty, styleProperty, textProperty, visibleProperty, widthProperty
    • Методы, унаследованные от класса java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Методы, унаследованные от интерфейса javafx.event.EventTarget

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

    • tableView

      public final ReadOnlyObjectProperty<TableView<S>> tableViewProperty
      Таблица, к которой принадлежит этот столбец.
      См. также:
      getTableView()
    • cellValueFactory

      public final ObjectProperty<Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>>> cellValueFactoryProperty
      Необходимо установить фабрику значения ячейки, чтобы указать, как заполнить все ячейки в рамках одного столбца. Фабрика значения ячейки — это Callback, которая предоставляет экземпляр TableColumn.CellDataFeatures и ожидает возврата ObservableValue. Возвращаемый экземпляр ObservableValue будет наблюдаться внутри, чтобы позволить мгновенное обновление значения, которое будет отражено на экране. Пример того, как установить фабрику значений ячеек:
      
       lastNameCol.setCellValueFactory(new Callback<CellDataFeatures<Person, String>, ObservableValue<String>>() {
           public ObservableValue<String> call(CellDataFeatures<Person, String> p) {
               // p.getValue() returns the Person instance for a particular TableView row
               return p.getValue().lastNameProperty();
           }
        });
       }
       
      Обычный подход — заполнение ячеек в TableColumn с использованием одного значения из объекта JavaBean. Для поддержки этой распространённой ситуации существует класс PropertyValueFactory. Обратитесь к этому классу за дополнительной информацией о его использовании, а кратко вот как можно упростить вышеуказанный случай с использованием класса PropertyValueFactory:
      
       lastNameCol.setCellValueFactory(new PropertyValueFactory<Person,String>("lastName"));
       
      См. также:
      getCellValueFactory(), setCellValueFactory(Callback)
    • cellFactory

      public final ObjectProperty<Callback<TableColumn<S,​T>,​TableCell<S,​T>>> cellFactoryProperty
      Фабрика ячейки для всех ячеек в этом столбце. Фабрика ячейки отвечает за отображение данных, содержащихся в каждой TableCell для одного столбца таблицы.

      По умолчанию TableColumn использует default cell factory, но это можно заменить пользовательской реализацией, например, чтобы отобразить данные другим способом или для поддержки редактирования. Подробная документация по созданию пользовательских фабрик ячеек находится в другом месте (см. Cell и TableView, например).

      Наконец, в пакете javafx.scene.control.cell доступны несколько готовых фабрик ячеек.

      См. также:
      getCellFactory(), setCellFactory(Callback)
    • sortType

      public final ObjectProperty<TableColumn.SortType> sortTypeProperty
      Используется для указания, должен ли этот столбец, если он входит в порядок сортировки (см. TableView.getSortOrder() для получения дополнительной информации), сортироваться по возрастанию или убыванию. Простое переключение этого свойства приведет к изменению порядка сортировки в TableView, предполагая, конечно, что этот столбец первоначально находится в ObservableList sortOrder.
      См. также:
      getSortType(), setSortType(TableColumn.SortType)
    • onEditStart

      public final ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditStartProperty
      Обработчик событий будет вызван при успешном начале редактирования пользователем.
      См. также:
      getOnEditStart(), setOnEditStart(EventHandler)
    • onEditCommit

      public final ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCommitProperty
      Этот обработчик событий будет вызван при успешной фиксации редактирования пользователем.
      См. также:
      getOnEditCommit(), setOnEditCommit(EventHandler)
    • onEditCancel

      public final ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCancelProperty
      Этот обработчик событий будет вызван, когда пользователь отменяет редактирование ячейки.
      См. также:
      getOnEditCancel(), setOnEditCancel(EventHandler)
  • Подробное описание полей

    • DEFAULT_CELL_FACTORY

      public static final Callback<TableColumn<?,​?>,​TableCell<?,​?>> DEFAULT_CELL_FACTORY
      Если для TableColumn не указана cellFactory, тогда по умолчанию будет использоваться эта. В настоящее время он просто отображает свойство item TableCell в свойстве graphic, если item является Node, или просто вызывает toString(), если он не null, устанавливая полученную строку в свойстве text.
  • Подробное описание конструкторов

    • TableColumn

      public TableColumn()
      Создает TableColumn по умолчанию с фабрикой ячеек по умолчанию, компаратором и реализацией onEditCommit.
    • TableColumn

      public TableColumn​(String text)
      Создает TableColumn с текстом, заданным предоставленной строкой, с фабрикой ячеек по умолчанию, компаратором и реализацией onEditCommit.
      Параметры:
      text - Строка, отображаемая, когда TableColumn размещается в TableView.
  • Подробное описание методов

    • editAnyEvent

      public static <S,​T> EventType<TableColumn.CellEditEvent<S,​T>> editAnyEvent()
      Родительский событие редактирования для любого столбца TableColumn.
      Параметры типа:
      S - Тип обобщенного типа TableView
      T - Тип содержимого во всех ячейках в этом TableColumn
      Возвращает:
      Событие редактирования любого столбца TableColumn
    • editStartEvent

      public static <S,​T> EventType<TableColumn.CellEditEvent<S,​T>> editStartEvent()
      Указывает, что пользователь выполнил какое-либо взаимодействие для начала события редактирования, или, альтернативно, метод TableView.edit(int, javafx.scene.control.TableColumn) был вызван.
      Параметры типа:
      S - Тип обобщенного типа TableView
      T - Тип содержимого во всех ячейках в этом TableColumn
      Возвращает:
      Событие начала редактирования
    • editCancelEvent

      public static <S,​T> EventType<TableColumn.CellEditEvent<S,​T>> editCancelEvent()
      Указывает, что редактирование было отменено, что означает, что никакие изменения не должны быть внесены в исходный источник данных.
      Параметры типа:
      S - Тип обобщенного типа TableView
      T - Тип содержимого во всех ячейках в этом TableColumn
      Возвращает:
      Событие отмены редактирования
    • editCommitEvent

      public static <S,​T> EventType<TableColumn.CellEditEvent<S,​T>> editCommitEvent()
      Указывает, что редактирование было подтверждено пользователем, что означает, что изменения должны быть внесены в исходный источник данных, чтобы отразить новые данные.
      Параметры типа:
      S - Тип обобщенного типа TableView
      T - Тип содержимого во всех ячейках в этом TableColumn
      Возвращает:
      Событие подтверждения редактирования
    • tableViewProperty

      public final ReadOnlyObjectProperty<TableView<S>> tableViewProperty()
      TableView, к которому принадлежит этот TableColumn.
      См. также:
      getTableView()
    • getTableView

      public final TableView<S> getTableView()
      Возвращает значение свойства tableView.
      Описание свойства:
      TableView, к которому принадлежит этот TableColumn.
    • setCellValueFactory

      public final void setCellValueFactory​(Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>> value)
      Устанавливает значение свойства cellValueFactory.
      Описание свойства:
      Необходимо установить фабрику значений ячеек, чтобы указать, как заполнять все ячейки в пределах одного TableColumn. Фабрика значений ячеек — это Callback, которая предоставляет экземпляр TableColumn.CellDataFeatures и ожидает возвращение ObservableValue. Возвращаемый экземпляр ObservableValue будет наблюдаться внутри, чтобы позволить немедленные обновления значения, которые будут отражены на экране. Пример установки фабрики значений ячеек:
      
       lastNameCol.setCellValueFactory(new Callback<CellDataFeatures<Person, String>, ObservableValue<String>>() {
           public ObservableValue<String> call(CellDataFeatures<Person, String> p) {
               // p.getValue() returns the Person instance for a particular TableView row
               return p.getValue().lastNameProperty();
           }
        });
       }
       
      Распространенный подход заключается в заполнении ячеек в TableColumn с использованием единственного значения из объекта Java Bean. Для поддержки этого распространенного сценария существует класс PropertyValueFactory. Обратитесь к этому классу за дополнительной информацией о его использовании, но кратко, вот как можно упростить вышеописанный случай с использованием класса PropertyValueFactory:
      
       lastNameCol.setCellValueFactory(new PropertyValueFactory<Person,String>("lastName"));
       
    • getCellValueFactory

      public final Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>> getCellValueFactory()
      Возвращает значение свойства cellValueFactory.
      Описание свойства:
      Необходимо установить фабрику значений ячеек, чтобы указать, как заполнять все ячейки в пределах одного TableColumn. Фабрика значений ячеек — это Callback, которая предоставляет экземпляр TableColumn.CellDataFeatures и ожидает возвращение ObservableValue. Возвращаемый экземпляр ObservableValue будет наблюдаться внутри, чтобы позволить немедленные обновления значения, которые будут отражены на экране. Пример установки фабрики значений ячеек:
      
       lastNameCol.setCellValueFactory(new Callback<CellDataFeatures<Person, String>, ObservableValue<String>>() {
           public ObservableValue<String> call(CellDataFeatures<Person, String> p) {
               // p.getValue() returns the Person instance for a particular TableView row
               return p.getValue().lastNameProperty();
           }
        });
       }
       
      Распространенный подход заключается в заполнении ячеек в TableColumn с использованием единственного значения из объекта Java Bean. Для поддержки этого распространенного сценария существует класс PropertyValueFactory. Обратитесь к этому классу за дополнительной информацией о его использовании, но кратко, вот как можно упростить вышеописанный случай с использованием класса PropertyValueFactory:
      
       lastNameCol.setCellValueFactory(new PropertyValueFactory<Person,String>("lastName"));
       
    • cellValueFactoryProperty

      public final ObjectProperty<Callback<TableColumn.CellDataFeatures<S,​T>,​ObservableValue<T>>> cellValueFactoryProperty()
      Фабрика значений ячеек должна быть установлена для указания способа заполнения всех ячеек в одном столбце TableColumn. Фабрика значений ячеек — это Callback, которая предоставляет экземпляр TableColumn.CellDataFeatures и ожидает возвращения ObservableValue. Возвращаемый экземпляр ObservableValue будет наблюдаться внутри, чтобы позволить немедленные обновления значения, которые будут отражены на экране. Пример установки фабрики значений ячеек:
      
       lastNameCol.setCellValueFactory(new Callback<CellDataFeatures<Person, String>, ObservableValue<String>>() {
           public ObservableValue<String> call(CellDataFeatures<Person, String> p) {
               // p.getValue() returns the Person instance for a particular TableView row
               return p.getValue().lastNameProperty();
           }
        });
       }
       
      Распространенный подход заключается в заполнении ячеек в TableColumn с использованием единственного значения из объекта Java Bean. Для поддержки этого распространенного сценария существует класс PropertyValueFactory. Обратитесь к этому классу за дополнительной информацией о его использовании, но кратко, вот как можно упростить вышеописанный случай с использованием класса PropertyValueFactory:
      
       lastNameCol.setCellValueFactory(new PropertyValueFactory<Person,String>("lastName"));
       
      См. также:
      getCellValueFactory(), setCellValueFactory(Callback)
    • setCellFactory

      public final void setCellFactory​(Callback<TableColumn<S,​T>,​TableCell<S,​T>> value)
      Устанавливает значение свойства cellFactory.
      Описание свойства:
      Фабрика ячеек для всех ячеек в этом столбце. Фабрика ячеек отвечает за отображение данных, содержащихся в каждой ячейке TableCell для одного столбца таблицы.

      По умолчанию TableColumn использует default cell factory, но это можно заменить пользовательской реализацией, например, для отображения данных другим способом или для поддержки редактирования. Подробная документация по созданию пользовательских фабрик ячеек доступна в другом месте (см. Cell и TableView, например).

      Наконец, в пакете javafx.scene.control.cell доступно несколько предварительно созданных фабрик ячеек.

    • getCellFactory

      public final Callback<TableColumn<S,​T>,​TableCell<S,​T>> getCellFactory()
      Возвращает значение свойства cellFactory.
      Описание свойства:
      Фабрика ячеек для всех ячеек в этом столбце. Фабрика ячеек отвечает за отображение данных, содержащихся в каждой ячейке TableCell для одного столбца таблицы.

      По умолчанию TableColumn использует default cell factory, но это можно заменить пользовательской реализацией, например, для отображения данных другим способом или для поддержки редактирования. Подробная документация по созданию пользовательских фабрик ячеек доступна в другом месте (см. Cell и TableView, например).

      Наконец, в пакете javafx.scene.control.cell доступно несколько предварительно созданных фабрик ячеек.

    • cellFactoryProperty

      public final ObjectProperty<Callback<TableColumn<S,​T>,​TableCell<S,​T>>> cellFactoryProperty()
      Фабрика ячеек для всех ячеек в этом столбце. Фабрика ячеек отвечает за отображение данных, содержащихся в каждой ячейке TableCell для одного столбца таблицы.

      По умолчанию TableColumn использует default cell factory, но это можно заменить пользовательской реализацией, например, для отображения данных другим способом или для поддержки редактирования. Подробная документация по созданию пользовательских фабрик ячеек доступна в другом месте (см. Cell и TableView, например).

      Наконец, в пакете javafx.scene.control.cell доступно несколько предварительно созданных фабрик ячеек.

      См. также:
      getCellFactory(), setCellFactory(Callback)
    • sortTypeProperty

      public final ObjectProperty<TableColumn.SortType> sortTypeProperty()
      Используется для указания, должен ли этот столбец, если он является частью порядка сортировки (см. TableView.getSortOrder() для получения дополнительной информации), сортироваться по возрастанию или убыванию. Простое переключение этого свойства приведет к изменению порядка сортировки в TableView, при условии, что этот столбец, конечно, находится в списке ObservableList sortOrder с самого начала.
      См. также:
      getSortType(), setSortType(TableColumn.SortType)
    • setSortType

      public final void setSortType​(TableColumn.SortType value)
      Устанавливает значение свойства sortType.
      Описание свойства:
      Используется для указания, следует ли сортировать этот столбец (если он входит в порядок сортировки, см. TableView.getSortOrder() для получения более подробной информации) по возрастанию или убыванию. Простое переключение этого свойства приведет к изменению порядка сортировки в TableView, предполагая, конечно, что этот столбец изначально находится в ObservableList sortOrder.
    • getSortType

      public final TableColumn.SortType getSortType()
      Получает значение свойства sortType.
      Описание свойства:
      Используется для указания, следует ли сортировать этот столбец (если он входит в порядок сортировки, см. TableView.getSortOrder() для получения более подробной информации) по возрастанию или убыванию. Простое переключение этого свойства приведет к изменению порядка сортировки в TableView, предполагая, конечно, что этот столбец изначально находится в ObservableList sortOrder.
    • setOnEditStart

      public final void setOnEditStart​(EventHandler<TableColumn.CellEditEvent<S,​T>> value)
      Устанавливает значение свойства onEditStart.
      Описание свойства:
      Этот обработчик событий будет вызван, когда пользователь успешно начнёт редактирование.
    • getOnEditStart

      public final EventHandler<TableColumn.CellEditEvent<S,​T>> getOnEditStart()
      Получает значение свойства onEditStart.
      Описание свойства:
      Этот обработчик событий будет вызван, когда пользователь успешно начнёт редактирование.
    • onEditStartProperty

      public final ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditStartProperty()
      Этот обработчик событий будет вызван, когда пользователь успешно начнёт редактирование.
      См. также:
      getOnEditStart(), setOnEditStart(EventHandler)
    • setOnEditCommit

      public final void setOnEditCommit​(EventHandler<TableColumn.CellEditEvent<S,​T>> value)
      Устанавливает значение свойства onEditCommit.
      Описание свойства:
      Этот обработчик событий будет вызван, когда пользователь успешно завершит редактирование.
    • getOnEditCommit

      public final EventHandler<TableColumn.CellEditEvent<S,​T>> getOnEditCommit()
      Получает значение свойства onEditCommit.
      Описание свойства:
      Этот обработчик событий будет вызван, когда пользователь успешно завершит редактирование.
    • onEditCommitProperty

      public final ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCommitProperty()
      Этот обработчик событий будет вызван, когда пользователь успешно завершит редактирование.
      См. также:
      getOnEditCommit(), setOnEditCommit(EventHandler)
    • setOnEditCancel

      public final void setOnEditCancel​(EventHandler<TableColumn.CellEditEvent<S,​T>> value)
      Устанавливает значение свойства onEditCancel.
      Описание свойства:
      Этот обработчик событий будет вызван, когда пользователь отменит редактирование ячейки.
    • getOnEditCancel

      public final EventHandler<TableColumn.CellEditEvent<S,​T>> getOnEditCancel()
      Получает значение свойства onEditCancel.
      Описание свойства:
      Этот обработчик событий будет вызван, когда пользователь отменит редактирование ячейки.
    • onEditCancelProperty

      public final ObjectProperty<EventHandler<TableColumn.CellEditEvent<S,​T>>> onEditCancelProperty()
      Этот обработчик событий будет вызван, когда пользователь отменит редактирование ячейки.
      См. также:
      getOnEditCancel(), setOnEditCancel(EventHandler)
    • getColumns

      public final ObservableList<TableColumn<S,​?>> getColumns()
      Это позволяет использовать вложенные столбцы, что может быть полезно для группировки связанных данных. Например, у нас может быть столбец 'Имя' с двумя вложенными столбцами для 'Имя' и 'Фамилия'.

      Это никак не влияет на таблицу — все индексы столбцов указывают только на листовые столбцы, и отсортировать по родительскому столбцу нельзя, только по листовым. Другими словами, это чисто визуальная функция.

      Задано в:
      getColumns в классе TableColumnBase<S,​T>
      Возвращает:
      ObservableList, содержащую экземпляры TableColumnBase (или подклассы), являющиеся дочерними элементами этого TableColumnBase. Если эти дочерние экземпляры TableColumnBase установлены как видимые, они будут отображаться под этим столбцом таблицы.
    • getCellObservableValue

      public final ObservableValue<T> getCellObservableValue​(int index)
      Попытка вернуть ObservableValue<T> для элемента в данном индексе (который имеет тип S). Другими словами, этот метод ожидает получить целое число, большее или равное нулю и меньшее размера базовой модели данных. Если индекс корректный, этот метод вернет ObservableValue<T> для этого конкретного столбца.

      Это достигается путём вызова cell value factory и возвращением того, что он возвращает при передаче CellDataFeatures (см., например, классы CellDataFeatures, относящиеся к TableColumn и TreeTableColumn для получения более подробной информации).

      Задано в:
      getCellObservableValue в классе TableColumnBase<S,​T>
      Параметры:
      index — индекс элемента (типа S), для которого требуется ObservableValue<T>.
      Возвращает:
      ObservableValue<T> для этого конкретного столбца таблицы.
    • getCellObservableValue

      public final ObservableValue<T> getCellObservableValue​(S item)
      Попытка вернуть ObservableValue<T> для заданного элемента (который имеет тип S). Другими словами, этот метод ожидает получить объект из базовой модели данных для всей «строки» в таблице, и должен вернуть ObservableValue<T> для значения в этом конкретном столбце.

      Это достигается путём вызова cell value factory и возвращением того, что он возвращает при передаче CellDataFeatures (см., например, классы CellDataFeatures, относящиеся к TableColumn и TreeTableColumn для получения более подробной информации).

      Задано в:
      getCellObservableValue в классе TableColumnBase<S,​T>
      Параметры:
      item — элемент (типа S), для которого требуется ObservableValue<T>.
      Возвращает:
      ObservableValue<T> для этого конкретного столбца таблицы.
    • getTypeSelector

      public String getTypeSelector()
      Тип этого Styleable, используемый в соответствии с выбором селектора. Аналогично элементу в HTML. (CSS Type Selector).
      Задано в:
      getTypeSelector в интерфейсе Styleable
      Возвращает:
      "TableColumn"
      С:
      JavaFX 8.0
    • getStyleableParent

      public Styleable getStyleableParent()
      Возвращает родителя данного Styleable, или null, если родителя нет.
      Задано в:
      getStyleableParent в интерфейсе Styleable
      Возвращает:
      getTableView()
      С:
      JavaFX 8.0
    • getCssMetaData

      public List<CssMetaData<? extends Styleable,​?>> getCssMetaData()
      CssMetaData для данного Styleable. Может возвращаться как неизменяемый список.
      Задано в:
      getCssMetaData в интерфейсе Styleable
      Возвращает:
      CssMetaData
      С:
      JavaFX 8.0
    • getClassCssMetaData

      public static List<CssMetaData<? extends Styleable,​?>> getClassCssMetaData()
      Возвращает:
      CssMetaData, связанный с этим классом, который может включать CssMetaData его суперклассов.
      С:
      JavaFX 8.0
    • getStyleableNode

      public Node getStyleableNode()
      Возвращает Node, представляющий этот объект Styleable. Этот метод следует переопределять в случаях, когда Styleable сам по себе не является Node, чтобы он мог необязательно вернуть соответствующее представление корневого узла. По умолчанию этот метод возвращает null, что может означать, что либо сам Styleable является Node, либо, если это не так, что Styleable не имеет доступного на момент запроса представления узла.
      Задано в:
      getStyleableNode в интерфейсе Styleable
      Возвращает:
      Node, представляющий этот объект Styleable

© 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