Класс TableSelectionModel<T>
- javafx.scene.control.SelectionModel<T>
-
- javafx.scene.control.MultipleSelectionModel<T>
-
- javafx.scene.control.TableSelectionModel<T>
Параметры типа:
T - Тип базовой модели данных для пользовательского элемента управления.
Прямые известные подклассы:
TableView.TableViewSelectionModel, TreeTableView.TreeTableViewSelectionModel
public abstract class TableSelectionModel<T> extends MultipleSelectionModel<T>
TableView и TreeTableView.С момента:
JavaFX 8.0
-
Краткое описание свойств
Все методыМетоды экземпляровКонкретные методы Тип Свойство и описание BooleanPropertycellSelectionEnabledЛогическое свойство, указывающее, в режиме выбора строк или ячеек находится таблица.-
Свойства, унаследованные от класса javafx.scene.control.MultipleSelectionModel
selectionMode
-
Свойства, унаследованные от класса javafx.scene.control.SelectionModel
selectedIndex, selectedItem
-
-
Краткое описание конструкторов
Конструкторы Конструктор и описание TableSelectionModel()
-
Краткое описание методов
Все методыМетоды экземпляровАбстрактные методыКонкретные методы Модификатор и тип Метод и описание BooleanPropertycellSelectionEnabledProperty()Логическое свойство, указывающее, в режиме выбора строк или ячеек находится таблица.voidclearAndSelect(int row)Метод, очищающий любой выбор перед установкой выбора в указанный индекс.abstract voidclearAndSelect(int row, TableColumnBase<T,?> column)Очищает весь выбор и затем выбирает ячейку на пересечении заданной строки/столбца.voidclearSelection()Очищает модель выбора всех выбранных индексов.voidclearSelection(int index)Этот метод очистит выбор элемента в указанном индексе.abstract voidclearSelection(int row, TableColumnBase<T,?> column)Удаляет выделение из указанного положения строки/столбца (в индексах представления).protected abstract voidfocus(int index)protected abstract intgetFocusedIndex()protected abstract intgetItemCount()Возвращает количество элементов в модели данных, которая лежит в основе элемента управления.protected abstract TgetModelItem(int index)Возвращает элемент в заданном индексе.ObservableList<Integer>getSelectedIndices()Возвращает только для чтения ObservableList всех выбранных индексов.ObservableList<T>getSelectedItems()Возвращает только для чтения ObservableList всех выбранных элементов.booleanisCellSelectionEnabled()Получает значение свойства cellSelectionEnabled.booleanisEmpty()Этот метод доступен для проверки наличия выбранных индексов/элементов.booleanisSelected(int index)Удобный метод для проверки, выбран ли данный индекс в данном SelectionModel.abstract booleanisSelected(int row, TableColumnBase<T,?> column)Удобная функция, которая проверяет, выбрана ли данная строка и столбец в этом экземпляре таблицы.voidselect(int row)Этот метод выберет заданный индекс в модели выбора, предполагая, что индекс находится в допустимом диапазоне (т.е.abstract voidselect(int row, TableColumnBase<T,?> column)Выбирает ячейку на пересечении заданной строки/столбца.voidselect(T obj)Этот метод попытается выбрать индекс, содержащий данный объект.abstract voidselectAboveCell()Выбирает ячейку, расположенную непосредственно над текущей выбранной ячейкой.voidselectAll()Удобный метод для выбора всех доступных индексов.abstract voidselectBelowCell()Выбирает ячейку, расположенную непосредственно под текущей выбранной ячейкой.voidselectFirst()Этот метод попытается выбрать первый индекс в элементе управления.voidselectIndices(int row, int... rows)Этот метод позволяет устанавливать один или несколько выборов одновременно.voidselectLast()Этот метод попытается выбрать последний индекс в элементе управления.abstract voidselectLeftCell()Выбирает ячейку слева от текущей выбранной ячейки.voidselectNext()Этот метод попытается выбрать индекс, непосредственно следующий за текущим фокусируемым индексом.voidselectPrevious()Этот метод попытается выбрать индекс, непосредственно предшествующий текущему фокусируемому индексу.abstract voidselectRange(int minRow, TableColumnBase<T,?> minColumn, int maxRow, TableColumnBase<T,?> maxColumn)Выбирает ячейки в диапазоне (minRow, minColumn) до (maxRow, maxColumn), включительно.abstract voidselectRightCell()Выбирает ячейку справа от текущей выбранной ячейки.voidsetCellSelectionEnabled(boolean value)Устанавливает значение свойства cellSelectionEnabled.-
Методы, унаследованные от класса javafx.scene.control.MultipleSelectionModel
getSelectionMode, selectionModeProperty, selectRange, setSelectionMode
-
Методы, унаследованные от класса javafx.scene.control.SelectionModel
getSelectedIndex, getSelectedItem, selectedIndexProperty, selectedItemProperty, setSelectedIndex, setSelectedItem
-
-
Подробное описание свойств
-
cellSelectionEnabled
public final BooleanProperty cellSelectionEnabledProperty
Логическое свойство, указывающее, в режиме выбора строк или ячеек находится таблица. По умолчанию таблица находится в режиме выбора строк, что означает, что отдельные ячейки не могут быть выбраны. УстановкаcellSelectionEnabledв значение true позволяет выбирать ячейки (но не строки).
-
-
Подробное описание конструкторов
-
TableSelectionModel
public TableSelectionModel()
-
-
Подробное описание методов
-
isSelected
public abstract boolean isSelected(int row, TableColumnBase<T,?> column)Функция для проверки, выделена ли ячейка с заданными индексами строки и столбца в текущей таблице.
-
select
public abstract void select(int row, TableColumnBase<T,?> column)Выделяет ячейку по пересечению заданной строки и столбца.
-
clearAndSelect
public abstract void clearAndSelect(int row, TableColumnBase<T,?> column)Очищает все выделения и затем выделяет ячейку по пересечению заданной строки и столбца.
-
clearSelection
public abstract void clearSelection(int row, TableColumnBase<T,?> column)Удаляет выделение из указанной позиции строки/столбца (индексы представления). Если эта конкретная ячейка (или строка, если значение столбца равно -1) не выделена, ничего не происходит.
-
selectLeftCell
public abstract void selectLeftCell()
Выделяет ячейку слева от текущей выделенной ячейки.
-
selectRightCell
public abstract void selectRightCell()
Выделяет ячейку справа от текущей выделенной ячейки.
-
selectAboveCell
public abstract void selectAboveCell()
Выделяет ячейку непосредственно над текущей выделенной ячейкой.
-
selectBelowCell
public abstract void selectBelowCell()
Выделяет ячейку непосредственно под текущей выделенной ячейкой.
-
selectRange
public abstract void selectRange(int minRow, TableColumnBase<T,?> minColumn, int maxRow, TableColumnBase<T,?> maxColumn)Выделяет ячейки в диапазоне (minRow, minColumn) до (maxRow, maxColumn), включительно.
-
cellSelectionEnabledProperty
public final BooleanProperty cellSelectionEnabledProperty()
Булево свойство, определяющее режим выделения в таблице: по строкам или по ячейкам. По умолчанию режим выделения по строкам, то есть отдельные ячейки не могут быть выделены. УстановкаcellSelectionEnabledв значение true разрешает выделение ячеек (но не строк).
-
setCellSelectionEnabled
public final void setCellSelectionEnabled(boolean value)
Устанавливает значение свойства cellSelectionEnabled.Описание свойства:
Булево свойство, определяющее режим выделения в таблице: по строкам или по ячейкам. По умолчанию режим выделения по строкам, то есть отдельные ячейки не могут быть выделены. Установка
cellSelectionEnabledв значение true разрешает выделение ячеек (но не строк).
-
isCellSelectionEnabled
public final boolean isCellSelectionEnabled()
Возвращает значение свойства cellSelectionEnabled.Описание свойства:
Булево свойство, определяющее режим выделения в таблице: по строкам или по ячейкам. По умолчанию режим выделения по строкам, то есть отдельные ячейки не могут быть выделены. Установка
cellSelectionEnabledв значение true разрешает выделение ячеек (но не строк).
-
getSelectedIndices
public ObservableList<Integer> getSelectedIndices()
Описание скопировано из класса:MultipleSelectionModelВозвращает только для чтения ObservableList всех выделенных индексов. ObservableList будет обновляться моделью выделения, чтобы всегда отражать изменения в выделении. Это можно наблюдать, добавив
ListChangeListenerв возвращаемый ObservableList.Определено в:
getSelectedIndicesв классеMultipleSelectionModel<T>
-
getSelectedItems
public ObservableList<T> getSelectedItems()
Описание скопировано из класса:MultipleSelectionModelВозвращает только для чтения ObservableList всех выделенных элементов. ObservableList будет обновляться моделью выделения, чтобы всегда отражать изменения в выделении. Это можно наблюдать, добавив
ListChangeListenerв возвращаемый ObservableList.Определено в:
getSelectedItemsв классеMultipleSelectionModel<T>
-
getItemCount
protected abstract int getItemCount()
Возвращает количество элементов в модели данных, на которой основано управление. Например, ListView selection model, вероятно, вернётlistView.getItems().size(). Действительный диапазон выбираемых индексов находится между 0 и значением, возвращаемым этим методом.
-
getModelItem
protected abstract T getModelItem(int index)
Возвращает элемент по заданному индексу. Пример с использованием ListView был быlistView.getItems().get(index).Параметры:
index- Индекс элемента, запрашиваемого из базовой модели данных.Возвращает:
Возвращает null, если индекс находится вне границ, или элемент типа T, относящийся к данному индексу.
-
focus
protected abstract void focus(int index)
-
getFocusedIndex
protected abstract int getFocusedIndex()
-
clearAndSelect
public void clearAndSelect(int row)
Описание скопировано из класса:SelectionModelМетод, очищающий любое выделение перед установкой выделения для данного индекса. Цель этого метода – избежать необходимости вызоваSelectionModel.clearSelection()в первую очередь, что означает, что наблюдатели, отслеживающие свойствоselected index, не увидят временного установления выделенного индекса в -1.Определено в:
clearAndSelectв классеSelectionModel<T>Параметры:
row- Индекс, который должен быть единственным выделенным индексом в этой модели выделения.
-
select
public void select(int row)
Описание скопировано из класса:SelectionModelВыделяет данный индекс в модели выделения, предполагая, что индекс находится в допустимом диапазоне (т.е. больше или равен нулю и меньше общего количества элементов в базовой модели данных).
Если в этой модели уже выделен один или несколько индексов, вызов этого метода не очистит эти выделения – для этого необходимо сначала вызвать
SelectionModel.clearSelection().Если индекс уже выделен, он не будет выделен повторно или снят с выделения. Однако, если реализовано множественное выделение, вызов select для уже выделенного индекса приведет к тому, что этот индекс станет новым выделенным индексом (как возвращает
SelectionModel.getSelectedIndex().Определено в:
selectв классеSelectionModel<T>Параметры:
row- Позиция элемента для выделения в модели выделения.
-
select
public void select(T obj)
Описание скопировано из класса:SelectionModelЭтот метод попытается выделить индекс, содержащий данный объект. Он перебирает базовые данные модели до тех пор, пока не найдет элемент со значением, равным данному объекту. На этом этапе он прекращает перебор, что означает, что этот метод не будет выделять несколько индексов.
Определено в:
selectв классеSelectionModel<T>Параметры:
obj- Объект, который нужно попытаться выделить в базовой модели данных.
-
selectIndices
public void selectIndices(int row, int... rows)Описание скопировано из класса:MultipleSelectionModelЭтот метод позволяет устанавливать одно или несколько выделений одновременно. Он будет игнорировать любые значения, которые не находятся в допустимом диапазоне (т.е. больше или равны нулю и меньше общего количества элементов в базовой модели данных). Любые дубликаты индексов будут проигнорированы.
Если в этой модели уже выделен один или несколько индексов, вызов этого метода не очистит эти выделения – для этого необходимо сначала вызвать clearSelection.
Последнее допустимое значение станет выделенным индексом/выделенным элементом.
Определено в:
selectIndicesв классеMultipleSelectionModel<T>
-
selectAll
public void selectAll()
Описание скопировано из класса:MultipleSelectionModelУдобный метод для выделения всех доступных индексов.
Определено в:
selectAllв классеMultipleSelectionModel<T>
-
selectFirst
public void selectFirst()
Описание скопировано из класса:MultipleSelectionModelЭтот метод попытается выделить первый индекс в элементе управления. Если сначала не вызвать clearSelection, этот метод выделит первый индекс, сохранив выделение любых других выделенных индексов.
Если первый индекс уже выделен, вызов этого метода не приведет к результатам и не произойдет событие выделения.
Определено в:
selectFirstв классеMultipleSelectionModel<T>
-
selectLast
public void selectLast()
Описание скопировано из класса:MultipleSelectionModelЭтот метод попытается выделить последний индекс в элементе управления. Если сначала не вызвать clearSelection, этот метод выделит последний индекс, сохранив выделение любых других выделенных индексов.
Если последний индекс уже выделен, вызов этого метода не приведет к результатам и не произойдет событие выделения.
Определено в:
selectLastв классеMultipleSelectionModel<T>
-
clearSelection
public void clearSelection(int index)
Описание скопировано из класса:SelectionModelЭтот метод очистит выделение элемента по заданному индексу. Если данный индекс не выделен, ничего не произойдёт.
Определено в:
clearSelectionв классеSelectionModel<T>Параметры:
index- Выделяемый элемент для снятия выделения.
-
clearSelection
public void clearSelection()
Описание скопировано из класса:SelectionModelОчищает модель выделения всех выделенных индексов.
Определено в:
clearSelectionв классеSelectionModel<T>
-
-
isSelected
public boolean isSelected(int index)
Описание скопировано из класса:SelectionModelУдобный метод, чтобы узнать, выбран ли данный индекс в текущем SelectionModel. Функционально эквивалентен вызову
getSelectedIndices().contains(index).Определено в:
isSelectedв классеSelectionModel<T>Параметры:
index- Индекс для проверки на текущий выбор.Возвращает:
True, если данный индекс выбран, иначе false.
-
isEmpty
public boolean isEmpty()
Описание скопировано из класса:SelectionModelЭтот метод позволяет проверить, есть ли выбранные индексы/элементы. Он вернёт true, если нет выбранных элементов, и false, если они есть.Определено в:
isEmptyв классеSelectionModel<T>Возвращает:
Вернёт true, если нет выбранных элементов, и false, если они есть.
-
selectPrevious
public void selectPrevious()
Описание скопировано из класса:SelectionModelЭтот метод попытается выбрать индекс, непосредственно предшествующий текущему фокусному индексу. Если метод clearSelection не был вызван предварительно, данный метод выберет предыдущий индекс, сохранив выбор других индексов.
Вызов этого метода будет успешным только при выполнении следующих условий:
- В данный момент есть фокусный индекс.
- Фокусный индекс не является первым индексом в элементе управления.
- Предыдущий индекс ещё не выбран.
Если какое-либо из этих условий не выполняется, событие выбора не произойдёт.
Определено в:
selectPreviousв классеSelectionModel<T>
-
selectNext
public void selectNext()
Описание скопировано из класса:SelectionModelЭтот метод попытается выбрать индекс, непосредственно следующий за текущим фокусным индексом. Если метод clearSelection не был вызван предварительно, данный метод выберет следующий индекс, сохранив выбор других индексов.
Вызов этого метода будет успешным только при выполнении следующих условий:
- В данный момент есть фокусный индекс.
- Фокусный индекс не является последним индексом в элементе управления.
- Следующий индекс ещё не выбран.
Если какое-либо из этих условий не выполняется, событие выбора не произойдёт.
Определено в:
selectNextв классеSelectionModel<T>
-
© 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.