- java.lang.Object
-
- javafx.scene.control.SelectionModel<T>
-
- Параметры типа:
-
T- Тип элемента, содержащегося в элементе управления, который можно выбрать.
- Непосредственные подклассы:
-
MultipleSelectionModel,SingleSelectionModel
public abstract class SelectionModel<T> extends Object
SelectionModel — абстрактный класс, используемый элементами пользовательского интерфейса для предоставления согласованного API для управления выделением.- С тех пор:
- JavaFX 2.0
-
Краткое описание свойств
Свойства Тип Свойство Описание ReadOnlyIntegerPropertyselectedIndexСсылается на свойство выбранного индекса, которое используется для указания значения текущего выбранного индекса в модели выделения.ReadOnlyObjectProperty<T>selectedItemСсылается на свойство выбранного элемента, которое используется для указания текущего выбранного элемента в модели выделения.
-
Краткое описание конструкторов
Конструкторы Конструктор Описание SelectionModel()Создаёт экземпляр SelectionModel по умолчанию.
-
Краткое описание методов
Все методыМетоды экземпляраАбстрактные методыКонкретные методы Модификатор и тип Метод Описание abstract voidclearAndSelect(int index)Метод, очищающий любое выделение перед установкой выделения на заданный индекс.abstract voidclearSelection()Очищает модель выделения всех выбранных индексов.abstract voidclearSelection(int index)Этот метод очистит выделение элемента в заданном индексе.intgetSelectedIndex()Возвращает целочисленное значение, указывающее текущий выбранный индекс в этой модели.TgetSelectedItem()Возвращает текущий выбранный объект (который находится в позиции выбранного индекса).abstract booleanisEmpty()Этот метод доступен для проверки наличия выбранных индексов/элементов.abstract booleanisSelected(int index)Удобный метод для информирования о том, является ли заданный индекс в данный момент выбранным в этой SelectionModel.abstract voidselect(int index)Этот метод выберет заданный индекс в модели выделения, предполагая, что индекс находится в пределах допустимого диапазона (т.е.abstract voidselect(T obj)Этот метод попытается выбрать индекс, содержащий заданный объект.ReadOnlyIntegerPropertyselectedIndexProperty()Ссылается на свойство выбранного индекса, которое используется для указания значения текущего выбранного индекса в модели выделения.ReadOnlyObjectProperty<T>selectedItemProperty()Ссылается на свойство выбранного элемента, которое используется для указания текущего выбранного элемента в модели выделения.abstract voidselectFirst()Этот метод попытается выбрать первый индекс в элементе управления.abstract voidselectLast()Этот метод попытается выбрать последний индекс в элементе управления.abstract voidselectNext()Этот метод попытается выбрать индекс, непосредственно следующий за текущим фокусируемым индексом.abstract voidselectPrevious()Этот метод попытается выбрать индекс, непосредственно предшествующий текущему фокусируемому индексу.protected voidsetSelectedIndex(int value)Устанавливает значение свойства selectedIndex.protected voidsetSelectedItem(T value)Устанавливает значение свойства selectedItem.
-
Подробное описание свойств
-
selectedIndex
public final ReadOnlyIntegerProperty selectedIndexProperty
Ссылается на свойство выбранного индекса, которое используется для указания значения текущего выбранного индекса в модели выделения. Выбранный индекс равен либо -1 (чтобы указать отсутствие выделения), либо целочисленному значению, находящемуся в диапазоне размера базовой модели данных.
Свойство выбранного индекса чаще всего используется, когда модель выделения допускает только однократное выделение, но оно одинаково применимо и в режиме множественного выбора. В этом режиме выбранный индекс всегда представляет последнее сделанное выделение.
Обратите внимание, что в случае множественного выбора можно добавить
ListChangeListenerк коллекции, возвращаемойMultipleSelectionModel.getSelectedIndices(), чтобы быть информированным всякий раз, когда выделение меняется, и это также сработает в случае одиночного выбора.- См. также:
-
getSelectedIndex(),setSelectedIndex(int)
-
selectedItem
public final ReadOnlyObjectProperty<T> selectedItemProperty
Ссылается на свойство выбранного элемента, которое используется для указания текущего выбранного элемента в модели выделения. Выбранный элемент равен либо null (чтобы указать отсутствие выделения), либо объекту, извлечённому из базовой модели данных элемента управления, с которым связана модель выделения.
Свойство выбранного элемента чаще всего используется, когда модель выделения настроена на однократный выбор, но оно одинаково применимо и в режиме множественного выбора. В этом режиме выбранный элемент всегда представляет последнее сделанное выделение.
- См. также:
-
getSelectedItem(),setSelectedItem(T)
-
-
Подробное описание конструкторов
-
SelectionModel
public SelectionModel()
Создаёт экземпляр SelectionModel по умолчанию.
-
-
Метод Detail
-
selectedIndexProperty
public final ReadOnlyIntegerProperty selectedIndexProperty()
Относится к свойству выбранного индекса, которое используется для указания текущего значения выбранного индекса в модели выбора. Выбранный индекс может быть либо -1, чтобы указать, что выбор отсутствует, либо целое число, которое находится в диапазоне размера базовой модели данных.
Свойство выбранного индекса чаще всего используется, когда модель выбора допускает только одиночный выбор, но оно также применимо и в режиме множественного выбора. В этом режиме выбранный индекс всегда будет представлять последний произведенный выбор.
Обратите внимание, что в случае множественного выбора можно добавить
ListChangeListenerк коллекции, возвращаемойMultipleSelectionModel.getSelectedIndices(), чтобы получать уведомления всякий раз, когда выбор изменяется, и это также будет работать в случае одиночного выбора.- См. также:
-
getSelectedIndex(),setSelectedIndex(int)
-
setSelectedIndex
protected final void setSelectedIndex(int value)
Устанавливает значение свойства selectedIndex.- Описание свойства:
-
Относится к свойству выбранного индекса, которое используется для указания текущего значения выбранного индекса в модели выбора. Выбранный индекс может быть либо -1, чтобы указать, что выбор отсутствует, либо целое число, которое находится в диапазоне размера базовой модели данных.
Свойство выбранного индекса чаще всего используется, когда модель выбора допускает только одиночный выбор, но оно также применимо и в режиме множественного выбора. В этом режиме выбранный индекс всегда будет представлять последний произведенный выбор.
Обратите внимание, что в случае множественного выбора можно добавить
ListChangeListenerк коллекции, возвращаемойMultipleSelectionModel.getSelectedIndices(), чтобы получать уведомления всякий раз, когда выбор изменяется, и это также будет работать в случае одиночного выбора.
-
getSelectedIndex
public final int getSelectedIndex()
Возвращает целое значение, указывающее текущий выбранный индекс в этой модели. Если выбрано несколько элементов, это вернёт индекс последнего произведённого выбора.
Обратите внимание, что возвращаемое значение является моментальным снимком — если вы хотите наблюдать за моделью выбора для изменений выбранного индекса, вы можете добавить ChangeListener следующим образом:
SelectionModel sm = ...; InvalidationListener listener = ...; sm.selectedIndexProperty().addListener(listener);- Возвращает:
- выбранный индекс
-
selectedItemProperty
public final ReadOnlyObjectProperty<T> selectedItemProperty()
Относится к свойству выбранного элемента, которое используется для указания текущего выбранного элемента в модели выбора. Выбранный элемент может быть либо null, чтобы указать, что выбор отсутствует, либо объект, извлеченный из базовой модели данных элемента управления, к которому привязана модель выбора.
Свойство выбранного элемента чаще всего используется, когда модель выбора настроена на одиночный выбор, но оно также применимо и в режиме множественного выбора. В этом режиме выбранный элемент всегда будет представлять последний произведенный выбор.
- См. также:
-
getSelectedItem(),setSelectedItem(T)
-
setSelectedItem
protected final void setSelectedItem(T value)
Устанавливает значение свойства selectedItem.- Описание свойства:
-
Относится к свойству выбранного элемента, которое используется для указания текущего выбранного элемента в модели выбора. Выбранный элемент может быть либо null, чтобы указать, что выбор отсутствует, либо объект, извлеченный из базовой модели данных элемента управления, к которому привязана модель выбора.
Свойство выбранного элемента чаще всего используется, когда модель выбора настроена на одиночный выбор, но оно также применимо и в режиме множественного выбора. В этом режиме выбранный элемент всегда будет представлять последний произведенный выбор.
-
getSelectedItem
public final T getSelectedItem()
Возвращает текущий выбранный объект (который находится в позиции выбранного индекса). Если выбрано несколько элементов, возвращается объект, находящийся в позиции, возвращаемой getSelectedIndex() (которая всегда указывает на индекс последнего выбранного элемента).Обратите внимание, что возвращаемое значение является моментальным снимком — если вы хотите наблюдать за моделью выбора для изменений выбранного элемента, вы можете добавить ChangeListener следующим образом:
SelectionModel sm = ...; InvalidationListener listener = ...; sm.selectedItemProperty().addListener(listener);- Возвращает:
- выбранный элемент
-
clearAndSelect
public abstract void clearAndSelect(int index)
Метод, очищающий любой предыдущий выбор перед установкой выбора на заданный индекс. Цель этого метода — избежать необходимости вызоваclearSelection()в первую очередь, что означает, что наблюдатели, отслеживающие свойствоselected index, не увидят временное значение выбранного индекса, установленное на -1.- Параметры:
-
index- Индекс, который должен быть единственным выбранным индексом в этой модели выбора.
-
select
public abstract void select(int index)
Этот метод выберет заданный индекс в модели выбора, при условии, что индекс находится в допустимом диапазоне (т.е. больше или равен нулю и меньше общего количества элементов в базовой модели данных).
Если в этой модели уже выбран один или несколько индексов, вызов этого метода не очистит эти выборы — для этого необходимо сначала вызвать
clearSelection().Если индекс уже выбран, он не будет выбран снова или снят с выбора. Однако, если реализован множественный выбор, вызов select для уже выбранного индекса приведет к тому, что индекс станет новым выбранным индексом (как возвращается
getSelectedIndex()).- Параметры:
-
index- Позиция элемента для выбора в модели выбора.
-
select
public abstract void select(T obj)
Этот метод попытается выбрать индекс, содержащий указанный объект. Он будет перебирать базовые данные до тех пор, пока не найдет элемент, значение которого равно указанному объекту. На этом этапе он прекратит перебор — это означает, что этот метод не выберет несколько индексов.
- Параметры:
-
obj- Объект, который необходимо попытаться выбрать в базовой модели данных.
-
clearSelection
public abstract void clearSelection(int index)
Этот метод очистит выбор элемента в заданном индексе. Если заданный индекс не выбран, ничего не произойдёт.
- Параметры:
-
index- Выбранный элемент, который нужно снять с выбора.
-
clearSelection
public abstract void clearSelection()
Очищает модель выбора всех выбранных индексов.
-
isSelected
public abstract boolean isSelected(int index)
Удобный метод для определения, выбран ли заданный индекс в текущей модели выбора. Функционально эквивалентно вызову
getSelectedIndices().contains(index).- Параметры:
-
index- Индекс, для которого нужно проверить, выбран ли он в данный момент. - Возвращает:
- True, если заданный индекс выбран, иначе false.
-
isEmpty
public abstract boolean isEmpty()
Этот метод используется для проверки наличия выбранных индексов/элементов. Он вернет true, если выбранных элементов нет, и false — если они есть.- Возвращает:
- Возвращает true, если выбранных элементов нет, и false — если они есть.
-
selectPrevious
public abstract void selectPrevious()
Этот метод попытается выбрать индекс, непосредственно предшествующий текущему фокусному индексу. Если clearSelection не вызывается предварительно, этот метод выберет предыдущий индекс, сохраняя выбор любых других индексов.
Вызов этого метода будет успешным только в следующих случаях:
- В данный момент существует ведущий/фокусный индекс.
- Ведущий/фокусный индекс не является первым индексом в элементе управления.
- Предыдущий индекс не выбран.
Если хотя бы одно из этих условий ложно, никакого события выбора не произойдет.
-
selectNext
public abstract void selectNext()
Этот метод попытается выбрать индекс, непосредственно следующий за текущим фокусным индексом. Если clearSelection не вызывается предварительно, этот метод выберет следующий индекс, сохраняя выбор любых других индексов.
Вызов этого метода будет успешным только в следующих случаях:
- В данный момент существует ведущий/фокусный индекс.
- Ведущий/фокусный индекс не является последним индексом в элементе управления.
- Следующий индекс не выбран.
Если хотя бы одно из этих условий ложно, никакого события выбора не произойдет.
-
selectFirst
public abstract void selectFirst()
Этот метод попытается выбрать первый индекс в элементе управления. Если clearSelection не вызывается предварительно, этот метод выберет первый индекс, сохраняя выбор любых других индексов.
Если первый индекс уже выбран, вызов этого метода не даст результата и никакого события выбора не произойдет.
-
-
selectLast
public abstract void selectLast()
Этот метод попытается выбрать последний индекс в элементе управления. Если предварительно не вызвать clearSelection, этот метод выберет последний индекс, сохранив выбор любых других текущих выбранных индексов.
Если последний индекс уже выбран, вызов этого метода не приведет к результату и не будет вызвано событие выбора.
-
© 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.