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

Класс TableView<S>

java.lang.Object
  • javafx.scene.Node
    • javafx.scene.Parent
      • javafx.scene.layout.Region
        • javafx.scene.control.Control
          • javafx.scene.control.TableView<S>

Параметры типа:

S - Тип объектов, содержащихся в списке элементов TableView.

Все реализованные интерфейсы:

Styleable, EventTarget, Skinnable



@DefaultProperty(value="items")
public class TableView<S>
extends Control
Компонент TableView предназначен для визуализации неограниченного числа строк данных, разбитых на столбцы. Таким образом, TableView очень похож на компонент ListView с добавлением поддержки столбцов. Пример создания TableView см. в разделе «Создание TableView» ниже.

Компонент TableView имеет ряд функций, в том числе:

  • Мощный API TableColumn:
    • Поддержка cell factories для удобной настройки содержимого cell в состояниях отображения и редактирования.
    • Указание minWidth/ prefWidth/ maxWidth, а также fixed width columns.
    • Изменение ширины пользователем во время выполнения.
    • Перетаскивание столбцов пользователем во время выполнения.
    • Встроенная поддержка column nesting
  • Различные политики resizing policies для управления действиями при изменении размеров столбцов пользователем.
  • Поддержка сортировки multiple column sorting щелчком по заголовку столбца (удерживайте клавишу Shift при щелчке по заголовку для сортировки по нескольким столбцам).

Обратите внимание, что TableView предназначен для визуализации данных — он не предназначен для компоновки пользовательского интерфейса. Если вы хотите компоновать пользовательский интерфейс в виде сетки, используйте компоновщик GridPane вместо этого.

Создание TableView

Создание TableView — многоэтапный процесс, который также зависит от модели данных, подлежащей представлению. В этом примере мы будем использовать ObservableList, так как это самый простой способ отображения данных в TableView. Класс Person будет содержать свойства first name и last name. То есть:

public class Person {
     private StringProperty firstName;
     public void setFirstName(String value) { firstNameProperty().set(value); }
     public String getFirstName() { return firstNameProperty().get(); }
     public StringProperty firstNameProperty() { 
         if (firstName == null) firstName = new SimpleStringProperty(this, "firstName");
         return firstName; 
     }
 
     private StringProperty lastName;
     public void setLastName(String value) { lastNameProperty().set(value); }
     public String getLastName() { return lastNameProperty().get(); }
     public StringProperty lastNameProperty() { 
         if (lastName == null) lastName = new SimpleStringProperty(this, "lastName");
         return lastName; 
     } 
 }

Во-первых, необходимо определить экземпляр TableView следующим образом:

TableView<Person> table = new TableView<Person>();

После определения базовой таблицы, мы переходим к модели данных. Как уже упоминалось, в этом примере мы будем использовать ObservableList. Мы можем сразу установить такой список непосредственно в TableView следующим образом:

ObservableList<Person> teamMembers = getTeamMembers();
 table.setItems(teamMembers);

После установки элементов таким образом, TableView будет автоматически обновляться всякий раз, когда список teamMembers изменяется. Если список элементов доступен до создания TableView, его можно передать непосредственно в конструктор.

На этом этапе у нас есть TableView, связанный с наблюдаемым teamMembers observableList. Недостающий компонент — способ разделения данных, содержащихся в модели, и представления их в одном или нескольких экземплярах TableColumn. Для создания TableView с двумя столбцами для отображения свойств firstName и lastName мы расширяем последний пример кода следующим образом:

ObservableList<Person> teamMembers = ...;
 table.setItems(teamMembers);
 
 TableColumn<Person,String> firstNameCol = new TableColumn<Person,String>("First Name");
 firstNameCol.setCellValueFactory(new PropertyValueFactory("firstName"));
 TableColumn<Person,String> lastNameCol = new TableColumn<Person,String>("Last Name");
 lastNameCol.setCellValueFactory(new PropertyValueFactory("lastName"));
 
 table.getColumns().setAll(firstNameCol, lastNameCol);

С помощью приведенного выше кода мы полностью определили минимальные свойства, необходимые для создания экземпляра TableView. Запуск этого кода (при условии, что список people ObservableList создан должным образом) приведет к отображению TableView с двумя столбцами для firstName и lastName. Любые другие свойства класса Person не будут отображаться, так как не определены никакие TableColumns.

Поддержка TableView для классов, не содержащих свойств

Приведенный выше код является кратчайшим возможным кодом для создания TableView, когда объекты предметной области спроектированы с учетом свойств JavaFX (в дополнение к этому, PropertyValueFactory поддерживает обычные свойства JavaBean, хотя и с оговорками, поэтому см. документацию класса для получения дополнительной информации). В противном случае необходимо предоставить пользовательскую фабрику значений ячейки. Дополнительную информацию о фабриках значений ячеек можно найти в документации API TableColumn, но кратко, вот как можно указать TableColumn:

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

API выбора/фокусировки TableView

Для отслеживания выбора и фокуса необходимо ознакомиться с классами SelectionModel и FocusModel. TableView имеет не более одного экземпляра каждого из этих классов, доступного из свойств selectionModel и focusModel соответственно. Хотя можно использовать этот API для установки новой модели выбора, в большинстве случаев это не требуется — модель выбора и фокуса по умолчанию должна работать в большинстве случаев.

По умолчанию используемая SelectionModel при создании TableView является реализацией абстрактного класса MultipleSelectionModel. Однако, как указано в документации API для свойства selectionMode, значение по умолчанию — SelectionMode.SINGLE. Таким образом, чтобы включить множественный выбор в экземпляре TableView по умолчанию, необходимо выполнить следующие действия:

tableView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);

Настройка визуальных элементов TableView

Визуальные элементы TableView можно полностью настроить, заменив фабрику строк по умолчанию row factory. Фабрика строк используется для создания экземпляров TableRow, которые используются для представления всей строки в TableView.

Однако во многих случаях этого не требуется, так как чаще всего требуется настройка ячеек на основе каждого столбца, а не каждой строки. Поэтому важно отметить, что TableRow не является TableCell. TableRow — это просто контейнер для нуля или более TableCell, и в большинстве случаев, скорее всего, вы захотите создать пользовательские TableCells, а не TableRows. Основной случай использования создания пользовательских экземпляров TableRow, скорее всего, заключается в добавлении какой-либо поддержки разнесения столбцов.

Вы можете создать пользовательские экземпляры TableCell для каждого столбца, назначив соответствующую функцию свойству TableColumn cell factory.

См. документацию класса Cell для более подробного описания способов написания пользовательских ячеек.

Сортировка

До JavaFX 8.0 элемент управления TableView рассматривал список items как модель представления, что означало, что любые изменения в списке немедленно отражались визуально. TableView также непосредственно изменял порядок этого списка при инициализации сортировки пользователем. Это означало, что (опять же, до JavaFX 8.0) TableView не мог вернуться в состояние без сортировки (после прохождения по возрастанию и убыванию).

Начиная с JavaFX 8.0 (и введением SortedList), теперь можно вернуть коллекцию в состояние без сортировки, когда нет столбцов в рамках sort order TableView. Для этого необходимо создать экземпляр SortedList и связать его свойство comparator со свойством TableView comparator следующим образом:

// create a SortedList based on the provided ObservableList
 SortedList sortedList = new SortedList(FXCollections.observableArrayList(2, 1, 3));

 // create a TableView with the sorted list set as the items it will show
 final TableView<Integer> tableView = new TableView<>(sortedList);

 // bind the sortedList comparator to the TableView comparator
 sortedList.comparatorProperty().bind(tableView.comparatorProperty());

 // Don't forget to define columns!

Редактирование

Это элемент управления поддерживает интерактивное редактирование значений, и этот раздел пытается дать обзор доступных API и того, как их следует использовать.

Во-первых, редактирование ячеек чаще всего требует другого пользовательского интерфейса, чем при отсутствии редактирования ячейки. Это ответственность реализации Cell, используемой. Для TableView настоятельно рекомендуется, чтобы редактирование производилось с помощью per-TableColumn, а не per row, поскольку чаще всего пользователи хотят редактировать значения каждого столбца по-разному, и этот подход позволяет использовать редакторы, специфичные для каждого столбца. Вы можете выбрать, будет ли ячейка постоянно находиться в режиме редактирования (например, это обычно используется для ячеек CheckBox), или переключаться на другой пользовательский интерфейс при начале редактирования (например, при двойном щелчке по ячейке).

Чтобы узнать, когда запрошено редактирование ячейки, просто переопределите метод Cell.startEdit() и обновите свойства ячейки text и graphic в соответствии с требованиями (например, установите текст в null и установите графический элемент в TextField). Кроме того, вы также должны переопределить Cell.cancelEdit(), чтобы восстановить пользовательский интерфейс до его исходного состояния при завершении редактирования. В обоих случаях важно убедиться, что вы вызываете метод super, чтобы ячейка выполняла все необходимые действия для входа или выхода из режима редактирования.

После того, как ваша ячейка находится в режиме редактирования, следующее, что вас, скорее всего, интересует, — это способ подтверждения или отмены выполняемого редактирования. Это ваша ответственность как поставщика фабрики ячеек. Ваша реализация ячейки будет знать, когда редактирование завершено, в зависимости от ввода пользователя (например, когда пользователь нажимает клавиши Enter или Esc на клавиатуре). Когда это произойдет, вам необходимо вызвать Cell.commitEdit(Object) или Cell.cancelEdit(), в зависимости от ситуации.

При вызове Cell.commitEdit(Object) генерируется событие в TableView, которое можно наблюдать, добавив EventHandler через TableColumn.setOnEditCommit(javafx.event.EventHandler). Аналогично, можно также наблюдать события редактирования для edit start и edit cancel.

По умолчанию обработчик подтверждения редактирования TableColumn не равен null и содержит обработчик по умолчанию, который пытается перезаписать значение свойства для элемента в текущей строке, редактируемой в данный момент. Он может это сделать, так как методу Cell.commitEdit(Object) передается новое значение, и это значение передается обработчику подтверждения редактирования через CellEditEvent, который генерируется. Просто вызовите TableColumn.CellEditEvent.getNewValue() для получения этого значения.

Очень важно отметить, что если вы вызовете TableColumn.setOnEditCommit(javafx.event.EventHandler) со своим собственным EventHandler, то вы удалите обработчик по умолчанию. Если вы не обработаете запись в свойство (или соответствующий источник данных), ничего не произойдёт. Вы можете обойти это, используя метод TableColumnBase.addEventHandler(javafx.event.EventType, javafx.event.EventHandler) для добавления TableColumn.EDIT_COMMIT_EVENT EventType с желаемым EventHandler в качестве второго аргумента. Используя этот метод, вы не замените реализацию по умолчанию, но вы получите уведомление, когда произойдет подтверждение редактирования.

Надеюсь, этот обзор ответит на некоторые часто задаваемые вопросы. К счастью, JavaFX поставляется с рядом предварительно созданных фабрик ячеек, которые обрабатывают все требования к редактированию за вас. Вы можете найти эти предварительно созданные фабрики ячеек в пакете javafx.scene.control.cell.

С тех пор:

JavaFX 2.0

См. также:

TableColumn, TablePosition

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

    Все методыМетоды экземпляровКонкретные методы
    Тип Свойство и описание
    ObjectProperty<Callback<TableView.ResizeFeatures,Boolean>> columnResizePolicy
    Этот метод вызывается при завершении операции изменения размера столбца пользователем.
    ReadOnlyObjectProperty<Comparator<S>> comparator
    Свойство comparator — это свойство только для чтения, которое отражает текущее состояние списка sort order.
    BooleanProperty editable
    Указывает, является ли этот TableView редактируемым. Ячейка TableCell сможет перейти в состояние редактирования только в том случае, если TableView, TableColumn (при необходимости) и TableCells внутри него также являются редактируемыми.
    ReadOnlyObjectProperty<TablePosition<S,?>> editingCell
    Представляет текущую редактируемую ячейку или null, если никакая ячейка не редактируется.
    DoubleProperty fixedCellSize
    Указывает, имеют ли ячейки этого элемента управления фиксированную высоту (указанного значения).
    ObjectProperty<TableView.TableViewFocusModel<S>> focusModel
    Представляет текущий установленный TableView.TableViewFocusModel для этого TableView.
    ObjectProperty<ObservableList<S>> items
    Базовая модель данных для TableView.
    ObjectProperty<EventHandler<ScrollToEvent<TableColumn<S,?>>>> onScrollToColumn
    Вызывается при запросе прокрутки столбца в область видимости с помощью scrollToColumn(TableColumn) или scrollToColumnIndex(int)
    ObjectProperty<EventHandler<ScrollToEvent<Integer>>> onScrollTo
    Вызывается при запросе прокрутки индекса в область видимости с помощью scrollTo(int) или scrollTo(Object)
    ObjectProperty<EventHandler<SortEvent<TableView<S>>>> onSort
    Вызывается при запросе сортировки элемента управления.
    ObjectProperty<Node> placeholder
    Этот узел отображается пользователю, когда таблица не имеет отображаемого содержимого.
    ObjectProperty<Callback<TableView<S>,TableRow<S>>> rowFactory
    Функция, которая генерирует TableRow.
    ObjectProperty<TableView.TableViewSelectionModel<S>> selectionModel
    SelectionModel предоставляет API, с помощью которого можно выбирать отдельные или несколько элементов в TableView, а также проверять, какие элементы выбраны пользователем.
    ObjectProperty<Callback<TableView<S>,Boolean>> sortPolicy
    Политика сортировки определяет, как должна выполняться сортировка в этом TableView.
    BooleanProperty tableMenuButtonVisible
    Это управляет доступностью кнопки меню, когда пользователь нажимает в выделенном пространстве в TableView, в котором находится пункт меню-переключатель для каждого TableColumn в этой таблице.
    • Свойства, унаследованные от класса javafx.scene.control.Control

      contextMenu, skin, tooltip
    • Свойства, унаследованные от класса javafx.scene.layout.Region

      background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
    • Свойства, унаследованные от класса javafx.scene.Parent

      needsLayout
    • Свойства, унаследованные от класса javafx.scene.Node

      accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, visible
  • Краткое описание вложенных классов

    Вложенные классы
    Модификатор и тип Класс и описание
    static class  TableView.ResizeFeatures<S>
    Неизменяемый оберточный класс для использования в функциональности TableView column resize.
    static class  TableView.TableViewFocusModel<S>
    A FocusModel с дополнительными функциями для поддержки требований элемента управления TableView.
    static class  TableView.TableViewSelectionModel<S>
    Простое расширение абстрактного класса SelectionModel для обеспечения специальной поддержки элементов управления TableView.
  • Краткое описание полей

    Поля
    Модификатор и тип Поле и описание
    static Callback<TableView.ResizeFeatures,Boolean> CONSTRAINED_RESIZE_POLICY
    Простая политика, гарантирующая, что сумма ширин всех видимых столбцов-листьев в этой таблице равна ширине самой таблицы.
    static Callback<TableView,Boolean> DEFAULT_SORT_POLICY
    По умолчанию sort policy, который будет использовать этот TableView, если не указана иная политика.
    static Callback<TableView.ResizeFeatures,Boolean> UNCONSTRAINED_RESIZE_POLICY
    Очень простая политика изменения размера, которая просто изменяет размер указанного столбца на предоставленный дельта и сдвигает все другие столбцы (справа от заданного столбца) дальше вправо (если дельта положительна) или влево (если дельта отрицательна).
    • Поля, унаследованные от класса javafx.scene.layout.Region

      USE_COMPUTED_SIZE, USE_PREF_SIZE
    • Поля, унаследованные от класса javafx.scene.Node

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

    Конструкторы
    Конструктор и описание
    TableView()
    Создает элемент управления TableView по умолчанию без содержимого.
    TableView(ObservableList<S> items)
    Создает TableView с содержимым, предоставленным в ObservableList элементов.
  • Краткое описание методов

    Все методыСтатические методыМетоды экземпляровКонкретные методы
    Модификатор и тип Метод и описание
    ObjectProperty<Callback<TableView.ResizeFeatures,Boolean>> columnResizePolicyProperty()
    Этот метод вызывается при завершении операции изменения размера столбца.
    ReadOnlyObjectProperty<Comparator<S>> comparatorProperty()
    Свойство comparator — это свойство только для чтения, представляющее текущее состояние списка sort order.
    protected Skin<?> createDefaultSkin()
    Создаёт новый экземпляр стандартной темы для данного элемента управления.
    void edit(int row, TableColumn<S,?> column)
    Переводит ячейку в заданной строке/столбце в режим редактирования, если она ещё не находится в этом режиме, при условии, что TableView и столбец также редактируемы.
    BooleanProperty editableProperty()
    Указывает, является ли этот TableView редактируемым. Ячейка может перейти в режим редактирования только если TableView, TableColumn (применимо) и ячейки внутри него также редактируемы.
    ReadOnlyObjectProperty<TablePosition<S,?>> editingCellProperty()
    Представляет текущую редактируемую ячейку или null, если ячейка не редактируется.
    DoubleProperty fixedCellSizeProperty()
    Указывает, имеют ли ячейки этого элемента управления фиксированную высоту (заданного значения).
    ObjectProperty<TableView.TableViewFocusModel<S>> focusModelProperty()
    Представляет текущую установленную модель фокуса TableView.TableViewFocusModel для этого TableView.
    static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
    Callback<TableView.ResizeFeatures,Boolean> getColumnResizePolicy()
    Возвращает значение свойства columnResizePolicy.
    ObservableList<TableColumn<S,?>> getColumns()
    Столбцы TableColumns, являющиеся частью этого TableView.
    Comparator<S> getComparator()
    Возвращает значение свойства comparator.
    List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
    TablePosition<S,?> getEditingCell()
    Возвращает значение свойства editingCell.
    double getFixedCellSize()
    Возвращает значение фиксированного размера ячейки.
    TableView.TableViewFocusModel<S> getFocusModel()
    Возвращает значение свойства focusModel.
    ObservableList<S> getItems()
    Возвращает значение свойства items.
    EventHandler<ScrollToEvent<Integer>> getOnScrollTo()
    Возвращает значение свойства onScrollTo.
    EventHandler<ScrollToEvent<TableColumn<S,?>>> getOnScrollToColumn()
    Возвращает значение свойства onScrollToColumn.
    EventHandler<SortEvent<TableView<S>>> getOnSort()
    Возвращает значение свойства onSort.
    Node getPlaceholder()
    Возвращает значение свойства placeholder.
    Callback<TableView<S>,TableRow<S>> getRowFactory()
    Возвращает значение свойства rowFactory.
    TableView.TableViewSelectionModel<S> getSelectionModel()
    Возвращает значение свойства selectionModel.
    ObservableList<TableColumn<S,?>> getSortOrder()
    Список sortOrder определяет порядок сортировки экземпляров TableColumn.
    Callback<TableView<S>,Boolean> getSortPolicy()
    Возвращает значение свойства sortPolicy.
    TableColumn<S,?> getVisibleLeafColumn(int column)
    Возвращает TableColumn в заданном индексе столбца, относительно всех других видимых столбцов-листьев.
    ObservableList<TableColumn<S,?>> getVisibleLeafColumns()
    Возвращает неизменяемый список, содержащий текущие видимые столбцы-листья.
    int getVisibleLeafIndex(TableColumn<S,?> column)
    Возвращает позицию заданного столбца, относительно всех других видимых столбцов-листьев.
    boolean isEditable()
    Возвращает значение свойства editable.
    boolean isTableMenuButtonVisible()
    Возвращает значение свойства tableMenuButtonVisible.
    ObjectProperty<ObservableList<S>> itemsProperty()
    Базовая модель данных для TableView.
    ObjectProperty<EventHandler<ScrollToEvent<TableColumn<S,?>>>> onScrollToColumnProperty()
    Вызывается при запросе прокрутки столбца в область видимости с помощью scrollToColumn(TableColumn) или scrollToColumnIndex(int)
    ObjectProperty<EventHandler<ScrollToEvent<Integer>>> onScrollToProperty()
    Вызывается при запросе прокрутки индекса в область видимости с помощью scrollTo(int) или scrollTo(Object)
    ObjectProperty<EventHandler<SortEvent<TableView<S>>>> onSortProperty()
    Вызывается при запросе сортировки элемента управления.
    ObjectProperty<Node> placeholderProperty()
    Этот узел отображается пользователю, когда таблица не содержит отображаемых данных.
    Object queryAccessibleAttribute(AccessibleAttribute attribute, Object... parameters)
    * Обработка доступности * *
    boolean resizeColumn(TableColumn<S,?> column, double delta)
    Применяет текущую политику изменения размера к указанному столбцу, изменяя его размер на основе предоставленного значения delta.
    ObjectProperty<Callback<TableView<S>,TableRow<S>>> rowFactoryProperty()
    Функция, которая генерирует TableRow.
    void scrollTo(int index)
    Прокручивает TableView таким образом, чтобы заданный индекс был виден в области просмотра.
    void scrollTo(S object)
    Прокручивает TableView таким образом, чтобы заданный объект был виден в области просмотра.
    void scrollToColumn(TableColumn<S,?> column)
    Прокручивает TableView таким образом, чтобы заданный столбец был виден в области просмотра.
    void scrollToColumnIndex(int columnIndex)
    Прокручивает TableView таким образом, чтобы заданный индекс был виден в области просмотра.
    ObjectProperty<TableView.TableViewSelectionModel<S>> selectionModelProperty()
    SelectionModel предоставляет API, с помощью которого можно выбрать одну или несколько записей в TableView, а также проверить, какие записи были выбраны пользователем.
    void setColumnResizePolicy(Callback<TableView.ResizeFeatures,Boolean> callback)
    Устанавливает значение свойства columnResizePolicy.
    void setEditable(boolean value)
    Устанавливает значение свойства editable.
    void setFixedCellSize(double value)
    Устанавливает новый фиксированный размер ячейки для этого элемента управления.
    void setFocusModel(TableView.TableViewFocusModel<S> value)
    Устанавливает значение свойства focusModel.
    void setItems(ObservableList<S> value)
    Устанавливает значение свойства items.
    void setOnScrollTo(EventHandler<ScrollToEvent<Integer>> value)
    Устанавливает значение свойства onScrollTo.
    void setOnScrollToColumn(EventHandler<ScrollToEvent<TableColumn<S,?>>> value)
    Устанавливает значение свойства onScrollToColumn.
    void setOnSort(EventHandler<SortEvent<TableView<S>>> value)
    Устанавливает значение свойства onSort.
    void setPlaceholder(Node value)
    Устанавливает значение свойства placeholder.
    void setRowFactory(Callback<TableView<S>,TableRow<S>> value)
    Устанавливает значение свойства rowFactory.
    void setSelectionModel(TableView.TableViewSelectionModel<S> value)
    Устанавливает значение свойства selectionModel.
    void setSortPolicy(Callback<TableView<S>,Boolean> callback)
    Устанавливает значение свойства sortPolicy.
    void setTableMenuButtonVisible(boolean value)
    Устанавливает значение свойства tableMenuButtonVisible.
    void sort()
    Метод sort принудительно перевычисляет алгоритм сортировки TableView.
    ObjectProperty<Callback<TableView<S>,Boolean>> sortPolicyProperty()
    Политика сортировки определяет, как должна выполняться сортировка в этом TableView.
    BooleanProperty tableMenuButtonVisibleProperty()
    Элемент управления отображает кнопку меню, когда пользователь нажимает в выделенной области TableView, содержащей пункты радио-меню для каждого TableColumn в этой таблице.
    • Наследованные методы из класса javafx.scene.control.Control

      computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, layoutChildren, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
    • Наследованные методы из класса javafx.scene.layout.Region

      backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapSize, snapSpace, snapToPixelProperty, widthProperty
    • Наследованные методы из класса javafx.scene.Parent

      getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
    • Наследованные методы из класса javafx.scene.Node

      accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, visibleProperty
    • Наследованные методы из класса java.lang.Object

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

    • items

      public final ObjectProperty<ObservableList<S>> itemsProperty
      Базовая модель данных для TableView. Обратите внимание, что у неё есть общий тип, который должен совпадать с типом самого TableView.

      См. также:

      getItems(), setItems(ObservableList)

    • tableMenuButtonVisible

      public final BooleanProperty tableMenuButtonVisibleProperty
      Определяет, доступна ли кнопка меню, когда пользователь нажимает в выделенной области TableView, в которой находится элемент радиоменю для каждого TableColumn в этой таблице. Это меню позволяет пользователю легко показывать и скрывать все TableColumn.

      См. также:

      isTableMenuButtonVisible(), setTableMenuButtonVisible(boolean)

    • columnResizePolicy

      public final ObjectProperty<Callback<TableView.ResizeFeatures,Boolean>> columnResizePolicyProperty
      Функция, вызываемая при завершении операции изменения размера столбца. Два наиболее распространённых варианта политики доступны как статические функции в классе TableView: UNCONSTRAINED_RESIZE_POLICY и CONSTRAINED_RESIZE_POLICY.

      См. также:

      getColumnResizePolicy(), setColumnResizePolicy(Callback)

    • rowFactory

      public final ObjectProperty<Callback<TableView<S>,TableRow<S>>> rowFactoryProperty
      Функция, которая создаёт TableRow. Система отвечает за повторное использование TableRow. Возвращает TableRow, который может быть использован для представления одной строки в TableView.

      Обратите внимание, что TableRow — это не TableCell. TableRow — это просто контейнер для TableCell, и в большинстве случаев скорее всего потребуется создавать пользовательские TableCell, а не TableRow. Основной случай использования для создания пользовательских экземпляров TableRow, вероятно, будет связан с реализацией поддержки размаха столбцов.

      Вы можете создавать пользовательские экземпляры TableCell для каждого столбца, назначив соответствующую функцию свойству cellFactory в классе TableColumn.

      См. также:

      getRowFactory(), setRowFactory(Callback)

    • placeholder

      public final ObjectProperty<Node> placeholderProperty
      Этот узел отображается пользователю, когда в таблице нет отображаемых данных. Это может быть из-за того, что в модели таблицы изначально нет данных, что фильтр был применён к модели таблицы, в результате чего пользователю нечего отобразить, или что столбцы не видны.

      См. также:

      getPlaceholder(), setPlaceholder(Node)

    • selectionModel

      public final ObjectProperty<TableView.TableViewSelectionModel<S>> selectionModelProperty
      SelectionModel предоставляет API, с помощью которого можно выбирать отдельные или несколько элементов в TableView, а также проверять, какие элементы были выбраны пользователем. Обратите внимание, что у него есть общий тип, который должен совпадать с типом самого TableView.

      См. также:

      getSelectionModel(), setSelectionModel(TableViewSelectionModel)

    • focusModel

      public final ObjectProperty<TableView.TableViewFocusModel<S>> focusModelProperty
      Представляет текущую установленную TableView.TableViewFocusModel для этого TableView. В почти всех случаях достаточно оставить это значение по умолчанию.

      См. также:

      getFocusModel(), setFocusModel(TableViewFocusModel)

    • editable

      public final BooleanProperty editableProperty
      Указывает, редактируемо ли это TableView — только если TableView, TableColumn (при необходимости) и TableCell внутри него редактируемы, TableCell сможет перейти в состояние редактирования.

      См. также:

      isEditable(), setEditable(boolean)

    • fixedCellSize

      public final DoubleProperty fixedCellSizeProperty
      Указывает, имеют ли ячейки этого элемента фиксированную высоту (указанного значения). Если это значение меньше или равно нулю, все ячейки имеют индивидуальные размеры и позиции. Это медленная операция. Поэтому, когда важна производительность, и разработчики не зависят от переменных размеров ячеек, рекомендуется установить значение фиксированного размера ячейки. Как правило, ячейки составляют около 24 пикселей, поэтому установка фиксированного размера ячейки 24 пикселей, скорее всего, приведёт к минимальному визуальному отличию, но улучшит производительность.

      Чтобы установить это свойство через CSS, используйте свойство -fx-fixed-cell-size. Это не следует путать со свойством -fx-cell-size. Разница между этими двумя CSS-свойствами заключается в том, что -fx-cell-size задаст размер всех ячеек до указанного размера, но не будет принудительно использовать только этот размер (позволяя переменные размеры ячеек и предотвращая возможность повышения производительности). Поэтому, когда важна производительность, используйте -fx-fixed-cell-size вместо -fx-cell-size. Если оба свойства указаны в CSS, -fx-fixed-cell-size имеет приоритет.

      С версии:

      JavaFX 8.0

      См. также:

      getFixedCellSize(), setFixedCellSize(double)

    • editingCell

      public final ReadOnlyObjectProperty<TablePosition<S,?>> editingCellProperty
      Представляет текущую редактируемую ячейку или null, если ячейка не редактируется.

      См. также:

      getEditingCell()

    • comparator

      public final ReadOnlyObjectProperty<Comparator<S>> comparatorProperty
      Свойство comparator — это только для чтения и отражает текущее состояние списка sort order. Список порядка сортировки содержит столбцы, которые были добавлены в него программно или путём нажатия пользователем на заголовки.

      С версии:

      JavaFX 8.0

      См. также:

      getComparator()

    • sortPolicy

      public final ObjectProperty<Callback<TableView<S>,Boolean>> sortPolicyProperty
      Политика сортировки определяет, как должна выполняться сортировка в этом TableView. Например, базовая политика сортировки может просто вызвать FXCollections.sort(tableView.getItems()), тогда как более сложная политика сортировки может обратиться к базе данных для выполнения необходимой сортировки на стороне сервера.

      TableView поставляется с политикой default sort policy, которая делает именно то, что упомянуто выше: она просто пытается отсортировать список items на месте.

      Рекомендуется не переопределять метод sort, а вместо этого предоставить другую политику сортировки.

      С версии:

      JavaFX 8.0

      См. также:

      getSortPolicy(), setSortPolicy(Callback)

    • onSort

      public ObjectProperty<EventHandler<SortEvent<TableView<S>>>> onSortProperty
      Вызывается при запросе сортировки элемента управления.

      С версии:

      JavaFX 8.0

      См. также:

      getOnSort(), setOnSort(EventHandler)

    • onScrollTo

      public ObjectProperty<EventHandler<ScrollToEvent<Integer>>> onScrollToProperty
      Вызывается при запросе прокрутки индекса в область видимости с помощью scrollTo(int) или scrollTo(Object)

      С версии:

      JavaFX 8.0

      См. также:

      getOnScrollTo(), setOnScrollTo(EventHandler)

    • onScrollToColumn

      public ObjectProperty<EventHandler<ScrollToEvent<TableColumn<S,?>>>> onScrollToColumnProperty
      Вызывается при запросе прокрутки столбца в область видимости с помощью scrollToColumn(TableColumn) или scrollToColumnIndex(int)

      С версии:

      JavaFX 8.0

      См. также:

      getOnScrollToColumn(), setOnScrollToColumn(EventHandler)

  • Подробное описание поля

    • UNCONSTRAINED_RESIZE_POLICY

      public static final Callback<TableView.ResizeFeatures,Boolean> UNCONSTRAINED_RESIZE_POLICY

      Очень простая политика изменения размера, которая просто изменяет размер указанного столбца на предоставленный дельта и смещает все остальные столбцы (справа от данного столбца) дальше вправо (если дельта положительна) или влево (если дельта отрицательна).

      Она также обрабатывает случай с вложенными столбцами, распределяя новое пространство или вычитая удалённое пространство равномерно между всеми непосредственными дочерними столбцами. Конечно, непосредственные дочерние элементы могут сами быть вложенными, и они затем будут использовать эту политику для своих дочерних элементов.

    • CONSTRAINED_RESIZE_POLICY

      public static final Callback<TableView.ResizeFeatures,Boolean> CONSTRAINED_RESIZE_POLICY

      Простая политика, которая гарантирует, что сумма ширины всех видимых листовых столбцов в этой таблице равна ширине самой таблицы.

      При изменении пользователем ширины столбца с этой политикой таблица автоматически изменяет ширину столбцов справа. При увеличении пользователем ширины столбца таблица уменьшает ширину правого столбца до минимальной ширины. Затем она уменьшает ширину второго правого столбца до минимальной ширины и так далее. Когда все столбцы справа достигают минимального размера, пользователь больше не может увеличить размер изменённого столбца.

    • DEFAULT_SORT_POLICY

      public static final Callback<TableView,Boolean> DEFAULT_SORT_POLICY
      Политика сортировки по умолчанию sort policy, которую будет использовать этот TableView, если не указана другая политика. Политика сортировки — это простой Callback, который принимает TableView в качестве единственного аргумента и ожидает булевый ответ, представляющий собой успех или неудачу сортировки. Булевое значение true представляет успех, а значение false (или null) будет рассматриваться как неудача.

      С версии:

      JavaFX 8.0

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

    • TableView

      public TableView()
      Создаёт стандартное управление TableView без содержимого.

      Обратитесь к документации класса TableView для получения подробной информации о стандартном состоянии других свойств.

    • TableView

      public TableView(ObservableList<S> items)
      Создаёт TableView с содержимым, предоставленным в списке ObservableList элементов. Это также настраивает наблюдателя, таким образом, любые изменения в списке элементов будут немедленно отражены в самом TableView.

      Обратитесь к документации класса TableView для получения подробной информации о стандартном состоянии других свойств.

      Параметры:

      items - Элементы, которые нужно вставить в TableView, и список, за изменениями в котором будет наблюдать (чтобы автоматически отображать их в TableView).

  • Метод Detail

    • itemsProperty

      public final ObjectProperty<ObservableList<S>> itemsProperty()
      Основная модель данных для TableView. Обратите внимание, что у неё есть общий тип, который должен совпадать с типом самого TableView.

      См. также:

      getItems(), setItems(ObservableList)

    • setItems

      public final void setItems(ObservableList<S> value)
      Устанавливает значение свойства items.

      Описание свойства:

      Основная модель данных для TableView. Обратите внимание, что у неё есть общий тип, который должен совпадать с типом самого TableView.

    • getItems

      public final ObservableList<S> getItems()
      Получает значение свойства items.

      Описание свойства:

      Основная модель данных для TableView. Обратите внимание, что у неё есть общий тип, который должен совпадать с типом самого TableView.

    • tableMenuButtonVisibleProperty

      public final BooleanProperty tableMenuButtonVisibleProperty()
      Определяет, доступна ли кнопка меню, когда пользователь щелкает в выделенной области TableView, в которой находится пункт меню радиокнопки для каждого TableColumn в этой таблице. Это меню позволяет легко показывать и скрывать все столбцы таблицы.

      См. также:

      isTableMenuButtonVisible(), setTableMenuButtonVisible(boolean)

    • setTableMenuButtonVisible

      public final void setTableMenuButtonVisible(boolean value)
      Устанавливает значение свойства tableMenuButtonVisible.

      Описание свойства:

      Определяет, доступна ли кнопка меню, когда пользователь щелкает в выделенной области TableView, в которой находится пункт меню радиокнопки для каждого TableColumn в этой таблице. Это меню позволяет легко показывать и скрывать все столбцы таблицы.

    • isTableMenuButtonVisible

      public final boolean isTableMenuButtonVisible()
      Получает значение свойства tableMenuButtonVisible.

      Описание свойства:

      Определяет, доступна ли кнопка меню, когда пользователь щелкает в выделенной области TableView, в которой находится пункт меню радиокнопки для каждого TableColumn в этой таблице. Это меню позволяет легко показывать и скрывать все столбцы таблицы.

    • setColumnResizePolicy

      public final void setColumnResizePolicy(Callback<TableView.ResizeFeatures,Boolean> callback)
      Устанавливает значение свойства columnResizePolicy.

      Описание свойства:

      Функция, вызываемая при завершении операции изменения размера столбца. Две наиболее распространённые политики доступны в виде статических функций в классе TableView: UNCONSTRAINED_RESIZE_POLICY и CONSTRAINED_RESIZE_POLICY.

    • getColumnResizePolicy

      public final Callback<TableView.ResizeFeatures,Boolean> getColumnResizePolicy()
      Получает значение свойства columnResizePolicy.

      Описание свойства:

      Функция, вызываемая при завершении операции изменения размера столбца. Две наиболее распространённые политики доступны в виде статических функций в классе TableView: UNCONSTRAINED_RESIZE_POLICY и CONSTRAINED_RESIZE_POLICY.

    • columnResizePolicyProperty

      public final ObjectProperty<Callback<TableView.ResizeFeatures,Boolean>> columnResizePolicyProperty()
      Функция, вызываемая при завершении операции изменения размера столбца. Две наиболее распространённые политики доступны в виде статических функций в классе TableView: UNCONSTRAINED_RESIZE_POLICY и CONSTRAINED_RESIZE_POLICY.

      См. также:

      getColumnResizePolicy(), setColumnResizePolicy(Callback)

    • rowFactoryProperty

      public final ObjectProperty<Callback<TableView<S>,TableRow<S>>> rowFactoryProperty()
      Функция, создающая TableRow. Система отвечает за повторное использование TableRow. Функция должна возвращать TableRow, который может быть использован для представления одной строки в TableView.

      Обратите внимание, что TableRow — это не TableCell. TableRow — это просто контейнер для TableCell, и в большинстве случаев вам скорее всего захочется создать пользовательские TableCell, а не TableRow. Основной случай использования создания пользовательских TableRow — это, вероятно, введение какой-либо поддержки размаха столбцов.

      Вы можете создавать пользовательские TableCell для каждого столбца, назначив соответствующую функцию свойству cellFactory в классе TableColumn.

      См. также:

      getRowFactory(), setRowFactory(Callback)

    • setRowFactory

      public final void setRowFactory(Callback<TableView<S>,TableRow<S>> value)
      Устанавливает значение свойства rowFactory.

      Описание свойства:

      Функция, создающая TableRow. Система отвечает за повторное использование TableRow. Функция должна возвращать TableRow, который может быть использован для представления одной строки в TableView.

      Обратите внимание, что TableRow — это не TableCell. TableRow — это просто контейнер для TableCell, и в большинстве случаев вам скорее всего захочется создать пользовательские TableCell, а не TableRow. Основной случай использования создания пользовательских TableRow — это, вероятно, введение какой-либо поддержки размаха столбцов.

      Вы можете создавать пользовательские TableCell для каждого столбца, назначив соответствующую функцию свойству cellFactory в классе TableColumn.

    • getRowFactory

      public final Callback<TableView<S>,TableRow<S>> getRowFactory()
      Получает значение свойства rowFactory.

      Описание свойства:

      Функция, создающая TableRow. Система отвечает за повторное использование TableRow. Функция должна возвращать TableRow, который может быть использован для представления одной строки в TableView.

      Обратите внимание, что TableRow — это не TableCell. TableRow — это просто контейнер для TableCell, и в большинстве случаев вам скорее всего захочется создать пользовательские TableCell, а не TableRow. Основной случай использования создания пользовательских TableRow — это, вероятно, введение какой-либо поддержки размаха столбцов.

      Вы можете создавать пользовательские TableCell для каждого столбца, назначив соответствующую функцию свойству cellFactory в классе TableColumn.

    • placeholderProperty

      public final ObjectProperty<Node> placeholderProperty()
      Этот узел отображается пользователю, когда таблица не имеет отображаемого содержимого. Это может быть из-за того, что у модели таблицы нет данных в первую очередь, что фильтр был применён к модели таблицы, в результате чего пользователю ничего не отображается, или что нет текущих видимых столбцов.

      См. также:

      getPlaceholder(), setPlaceholder(Node)

    • setPlaceholder

      public final void setPlaceholder(Node value)
      Устанавливает значение свойства placeholder.

      Описание свойства:

      Этот узел отображается пользователю, когда таблица не имеет отображаемого содержимого. Это может быть из-за того, что у модели таблицы нет данных в первую очередь, что фильтр был применён к модели таблицы, в результате чего пользователю ничего не отображается, или что нет текущих видимых столбцов.

    • getPlaceholder

      public final Node getPlaceholder()
      Получает значение свойства placeholder.

      Описание свойства:

      Этот узел отображается пользователю, когда таблица не имеет отображаемого содержимого. Это может быть из-за того, что у модели таблицы нет данных в первую очередь, что фильтр был применён к модели таблицы, в результате чего пользователю ничего не отображается, или что нет текущих видимых столбцов.

    • selectionModelProperty

      public final ObjectProperty<TableView.TableViewSelectionModel<S>> selectionModelProperty()
      SelectionModel предоставляет API, с помощью которого можно выбрать один или несколько элементов в TableView, а также проверить, какие элементы выбрал пользователь. Обратите внимание, что у него есть общий тип, который должен совпадать с типом самого TableView.

      См. также:

      getSelectionModel(), setSelectionModel(TableViewSelectionModel)

    • setSelectionModel

      public final void setSelectionModel(TableView.TableViewSelectionModel<S> value)
      Устанавливает значение свойства selectionModel.

      Описание свойства:

      SelectionModel предоставляет API, с помощью которого можно выбрать один или несколько элементов в TableView, а также проверить, какие элементы выбрал пользователь. Обратите внимание, что у него есть общий тип, который должен совпадать с типом самого TableView.

    • getSelectionModel

      public final TableView.TableViewSelectionModel<S> getSelectionModel()
      Получает значение свойства selectionModel.

      Описание свойства:

      SelectionModel предоставляет API, с помощью которого можно выбрать один или несколько элементов в TableView, а также проверить, какие элементы выбрал пользователь. Обратите внимание, что у него есть общий тип, который должен совпадать с типом самого TableView.

    • setFocusModel

      public final void setFocusModel(TableView.TableViewFocusModel<S> value)
      Устанавливает значение свойства focusModel.

      Описание свойства:

      Представляет текущий установленный TableView.TableViewFocusModel для этого TableView. В подавляющем большинстве случаев достаточно оставить этот параметр по умолчанию.

    • getFocusModel

      public final TableView.TableViewFocusModel<S> getFocusModel()
      Получает значение свойства focusModel.

      Описание свойства:

      Представляет текущий установленный TableView.TableViewFocusModel для этого TableView. В подавляющем большинстве случаев достаточно оставить этот параметр по умолчанию.

    • focusModelProperty

      public final ObjectProperty<TableView.TableViewFocusModel<S>> focusModelProperty()
      Представляет текущий установленный TableView.TableViewFocusModel для этого TableView. В подавляющем большинстве случаев достаточно оставить этот параметр по умолчанию.

      См. также:

      getFocusModel(), setFocusModel(TableViewFocusModel)

    • setEditable

      public final void setEditable(boolean value)
      Устанавливает значение свойства editable.

      Описание свойства:

      Определяет, является ли этот TableView редактируемым. Ячейка TableCell сможет перейти в состояние редактирования только если TableView, TableColumn (применимо) и TableCell внутри него все являются редактируемыми.

    • isEditable

      public final boolean isEditable()
      Получает значение свойства editable.

      Описание свойства:

      Определяет, является ли этот TableView редактируемым. Ячейка TableCell сможет перейти в состояние редактирования только если TableView, TableColumn (применимо) и TableCell внутри него все являются редактируемыми.

    • editableProperty

      public final BooleanProperty editableProperty()
      Определяет, является ли этот TableView редактируемым. Ячейка TableCell сможет перейти в состояние редактирования только если TableView, TableColumn (применимо) и TableCell внутри него все являются редактируемыми.

      См. также:

      isEditable(), setEditable(boolean)

    • setFixedCellSize

      public final void setFixedCellSize(double value)
      Устанавливает новый фиксированный размер ячейки для этого элемента управления. Любое значение больше нуля включит режим фиксированного размера ячейки, а значение ноль или меньше (или Region.USE_COMPUTED_SIZE) будет использоваться для отключения режима фиксированного размера ячейки.

      Параметры:

      value - Новое значение фиксированного размера ячейки или значение меньше или равно нулю (или Region.USE_COMPUTED_SIZE) для отключения.

      С тех пор:

      JavaFX 8.0

    • getFixedCellSize

      public final double getFixedCellSize()
      Возвращает значение фиксированного размера ячейки. Значение меньше или равно нулю используется для обозначения того, что режим фиксированного размера ячейки отключен, а значение больше нуля представляет размер всех ячеек в этом элементе управления.

      Возвращает:

      Двойное число, представляющее фиксированный размер ячейки этого элемента управления, или значение меньше или равно нулю, если режим фиксированного размера ячейки отключен.

      С тех пор:

      JavaFX 8.0

    • fixedCellSizeProperty

      public final DoubleProperty fixedCellSizeProperty()
      Определяет, имеют ли ячейки этого элемента управления фиксированную высоту (заданного значения). Если это значение меньше или равно нулю, все ячейки имеют индивидуально заданные размеры и расположение. Это медленная операция. Поэтому, когда важна производительность и разработчики не зависят от переменных размеров ячеек, рекомендуется установить значение фиксированного размера ячейки. Как правило, ячейки составляют около 24 пикселей, поэтому установка фиксированного размера ячейки в 24 пикселя, скорее всего, практически не повлияет на визуальное представление, но улучшит производительность.

      Для установки этого свойства через CSS используйте свойство -fx-fixed-cell-size. Не следует путать это со свойством -fx-cell-size. Разница между этими двумя свойствами CSS заключается в том, что -fx-cell-size установит размер всех ячеек до указанного размера, но не будет навязывать только этот размер (позволяя переменные размеры ячеек и предотвращая возможность повышения производительности). Поэтому, когда важна производительность, используйте -fx-fixed-cell-size вместо -fx-cell-size. Если оба свойства указаны в CSS, -fx-fixed-cell-size имеет приоритет.

      С тех пор:

      JavaFX 8.0

      См. также:

      getFixedCellSize(), setFixedCellSize(double)

    • getEditingCell

      public final TablePosition<S,?> getEditingCell()
      Получает значение свойства editingCell.

      Описание свойства:

      Представляет текущую редактируемую ячейку или null, если ячейка не редактируется.

    • editingCellProperty

      public final ReadOnlyObjectProperty<TablePosition<S,?>> editingCellProperty()
      Представляет текущую редактируемую ячейку или null, если ячейка не редактируется.

      См. также:

      getEditingCell()

    • getComparator

      public final Comparator<S> getComparator()
      Получает значение свойства comparator.

      Описание свойства:

      Свойство comparator — это свойство только для чтения, которое представляет текущее состояние списка sort order. Список sort order содержит столбцы, которые были добавлены в него программно или пользователем щелчком по заголовкам.

      С тех пор:

      JavaFX 8.0

    • comparatorProperty

      public final ReadOnlyObjectProperty<Comparator<S>> comparatorProperty()
      Свойство comparator — это свойство только для чтения, которое представляет текущее состояние списка sort order. Список sort order содержит столбцы, которые были добавлены в него программно или пользователем щелчком по заголовкам.

      С тех пор:

      JavaFX 8.0

      См. также:

      getComparator()

    • setSortPolicy

      public final void setSortPolicy(Callback<TableView<S>,Boolean> callback)
      Устанавливает значение свойства sortPolicy.

      Описание свойства:

      Политика сортировки определяет, как должна выполняться сортировка в этом TableView. Например, базовая политика сортировки может просто вызвать FXCollections.sort(tableView.getItems()), а более продвинутая — обратиться к базе данных для выполнения необходимой сортировки на стороне сервера.

      TableView поставляется с default sort policy, которая делает именно то, что описано выше: она просто пытается отсортировать список элементов на месте.

      Рекомендуется вместо переопределения метода sort использовать другую политику сортировки.

      С тех пор:

      JavaFX 8.0

    • getSortPolicy

      public final Callback<TableView<S>,Boolean> getSortPolicy()
      Получает значение свойства sortPolicy.

      Описание свойства:

      Политика сортировки определяет, как должна выполняться сортировка в этом TableView. Например, базовая политика сортировки может просто вызвать FXCollections.sort(tableView.getItems()), а более продвинутая — обратиться к базе данных для выполнения необходимой сортировки на стороне сервера.

      TableView поставляется с default sort policy, которая делает именно то, что описано выше: она просто пытается отсортировать список элементов на месте.

      Рекомендуется вместо переопределения метода sort использовать другую политику сортировки.

      С тех пор:

      JavaFX 8.0

    • sortPolicyProperty

      public final ObjectProperty<Callback<TableView<S>,Boolean>> sortPolicyProperty()
      Политика сортировки определяет, как должна выполняться сортировка в этом TableView. Например, базовая политика сортировки может просто вызвать FXCollections.sort(tableView.getItems()), а более продвинутая — обратиться к базе данных для выполнения необходимой сортировки на стороне сервера.

      TableView поставляется с default sort policy, которая делает именно то, что описано выше: она просто пытается отсортировать список элементов на месте.

      Рекомендуется вместо переопределения метода sort использовать другую политику сортировки.

      С тех пор:

      JavaFX 8.0

      См. также:

      getSortPolicy(), setSortPolicy(Callback)

    • setOnSort

      public void setOnSort(EventHandler<SortEvent<TableView<S>>> value)
      Устанавливает значение свойства onSort.

      Описание свойства:

      Вызывается при запросе сортировки элемента управления.

      С тех пор:

      JavaFX 8.0

    • getOnSort

      public EventHandler<SortEvent<TableView<S>>> getOnSort()
      Получает значение свойства onSort.

      Описание свойства:

      Вызывается при запросе сортировки элемента управления.

      С тех пор:

      JavaFX 8.0

    • onSortProperty

      public ObjectProperty<EventHandler<SortEvent<TableView<S>>>> onSortProperty()
      Вызывается при запросе сортировки элемента управления.

      С тех пор:

      JavaFX 8.0

      См. также:

      getOnSort(), setOnSort(EventHandler)

    • getColumns

      public final ObservableList<TableColumn<S,?>> getColumns()
      TableColumn, которые являются частью этого TableView. По мере изменения пользователем порядка столбцов TableView этот список будет обновляться, отражая текущий визуальный порядок.

      Примечание: для отображения любых данных в TableView должен быть хотя бы один TableColumn в этом ObservableList.

    • getSortOrder

      public final ObservableList<TableColumn<S,?>> getSortOrder()
      Список sortOrder определяет порядок, в котором сортируются экземпляры TableColumn. Пустой список sortOrder означает, что сортировка в TableView не применяется. Если список sortOrder содержит один TableColumn, TableView будет отсортирован по свойствам sortType и comparator этого TableColumn (при условии, что TableColumn.sortable равен true). Если список sortOrder содержит несколько экземпляров TableColumn, то TableView сначала сортируется по свойствам первого TableColumn. Если два элемента считаются равными, то для определения порядка используется второй TableColumn в списке. Это повторяется до тех пор, пока не будут рассмотрены результаты всех сравнителей TableColumn, если необходимо.

      Возвращает:

      ObservableList, содержащий ноль или более экземпляров TableColumn.

    • scrollTo

      public void scrollTo(int index)
      Прокручивает TableView так, чтобы заданный индекс был виден в области просмотра.

      Параметры:

      index - Индекс элемента, который должен быть виден пользователю.

    • scrollTo

      public void scrollTo(S object)
      Прокручивает TableView так, чтобы заданный объект был виден в области просмотра.

      Параметры:

      object - Объект, который должен быть виден пользователю.

      С тех пор:

      JavaFX 8.0

    • setOnScrollTo

      public void setOnScrollTo(EventHandler<ScrollToEvent<Integer>> value)
      Устанавливает значение свойства onScrollTo.

      Описание свойства:

      Вызывается при запросе прокрутки индекса в область видимости с помощью scrollTo(int) или scrollTo(Object)

      С момента:

      JavaFX 8.0

    • getOnScrollTo

      public EventHandler<ScrollToEvent<Integer>> getOnScrollTo()
      Возвращает значение свойства onScrollTo.

      Описание свойства:

      Вызывается при запросе прокрутки индекса в область видимости с помощью scrollTo(int) или scrollTo(Object)

      С момента:

      JavaFX 8.0

    • onScrollToProperty

      public ObjectProperty<EventHandler<ScrollToEvent<Integer>>> onScrollToProperty()
      Вызывается при запросе прокрутки индекса в область видимости с помощью scrollTo(int) или scrollTo(Object)

      С момента:

      JavaFX 8.0

      См. также:

      getOnScrollTo(), setOnScrollTo(EventHandler)

    • scrollToColumn

      public void scrollToColumn(TableColumn<S,?> column)
      Прокручивает TableView так, чтобы заданный столбец был виден в области просмотра.

      Параметры:

      column - Столбец, который должен быть виден пользователю.

      С момента:

      JavaFX 8.0

    • scrollToColumnIndex

      public void scrollToColumnIndex(int columnIndex)
      Прокручивает TableView так, чтобы заданный индекс был виден в области просмотра.

      Параметры:

      columnIndex - Индекс столбца, который должен быть виден пользователю.

      С момента:

      JavaFX 8.0

    • setOnScrollToColumn

      public void setOnScrollToColumn(EventHandler<ScrollToEvent<TableColumn<S,?>>> value)
      Устанавливает значение свойства onScrollToColumn.

      Описание свойства:

      Вызывается при запросе прокрутки столбца в область видимости с помощью scrollToColumn(TableColumn) или scrollToColumnIndex(int)

      С момента:

      JavaFX 8.0

    • getOnScrollToColumn

      public EventHandler<ScrollToEvent<TableColumn<S,?>>> getOnScrollToColumn()
      Возвращает значение свойства onScrollToColumn.

      Описание свойства:

      Вызывается при запросе прокрутки столбца в область видимости с помощью scrollToColumn(TableColumn) или scrollToColumnIndex(int)

      С момента:

      JavaFX 8.0

    • onScrollToColumnProperty

      public ObjectProperty<EventHandler<ScrollToEvent<TableColumn<S,?>>>> onScrollToColumnProperty()
      Вызывается при запросе прокрутки столбца в область видимости с помощью scrollToColumn(TableColumn) или scrollToColumnIndex(int)

      С момента:

      JavaFX 8.0

      См. также:

      getOnScrollToColumn(), setOnScrollToColumn(EventHandler)

    • resizeColumn

      public boolean resizeColumn(TableColumn<S,?> column,
                                  double delta)
      Применяет текущую политику изменения размера к заданному столбцу, изменяя его размер на основе предоставленного значения дельты.
    • edit

      public void edit(int row,
                       TableColumn<S,?> column)
      Вызывает переход ячейки по заданным индексам строки/столбца в состояние редактирования, если оно еще не установлено, и при условии, что TableView и столбец также могут редактироваться.

      Примечание: Этот метод отменит редактирование, если значение заданной строки меньше нуля, а заданный столбец равен null.

    • getVisibleLeafColumns

      public ObservableList<TableColumn<S,?>> getVisibleLeafColumns()
      Возвращает неизменяемый список, содержащий текущие видимые листовые столбцы.
    • getVisibleLeafIndex

      public int getVisibleLeafIndex(TableColumn<S,?> column)
      Возвращает позицию заданного столбца по отношению ко всем другим видимым листовым столбцам.
    • getVisibleLeafColumn

      public TableColumn<S,?> getVisibleLeafColumn(int column)
      Возвращает TableColumn в заданном индексе столбца, относительно всех других видимых листовых столбцов.
    • createDefaultSkin

      protected Skin<?> createDefaultSkin()
      Создает новый экземпляр стандартной темы для данного элемента управления. Это вызывается для создания темы для элемента управления, если тема не предоставлена через CSS -fx-skin или не установлена явно в подклассе с помощью setSkin(...).

      Переопределяет:

      createDefaultSkin в классе Control

      Возвращает:

      новый экземпляр стандартной темы для данного элемента управления. Если null, то элемент управления не будет иметь темы, пока не будет предоставлена тема через CSS.

    • sort

      public void sort()
      Метод sort заставляет TableView повторно выполнить алгоритм сортировки. Чаще всего вызывать этот метод напрямую не нужно, так как он автоматически вызывается, когда свойства sort order, sort policy или состояние столбца TableColumn sort type изменяются. Другими словами, этот метод следует вызывать напрямую только тогда, когда что-то внешнее изменяется, и требуется сортировка.

      С момента:

      JavaFX 8.0

    • getClassCssMetaData

      public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()

      Возвращает:

      CssMetaData, связанную с этим классом, которая может включать CssMetaData его родительских классов.

      С момента:

      JavaFX 8.0

    • getControlCssMetaData

      public List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()

      Переопределяет:

      getControlCssMetaData в классе Control

      Возвращает:

      неизменяемый список стилизуемых свойств элементов управления CSS

      С момента:

      JavaFX 8.0

    • queryAccessibleAttribute

      public Object queryAccessibleAttribute(AccessibleAttribute attribute,
                                             Object... parameters)
      * Обработка доступности * *

      Переопределяет:

      queryAccessibleAttribute в классе Control

      Параметры:

      attribute - запрашиваемый атрибут

      Возвращает:

      значение для запрашиваемого атрибута

      См. также:

      AccessibleAttribute

© 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