Класс FocusModel<T>
java.lang.Object
javafx.scene.control.FocusModel<T>
- Прямые известные подклассы:
TableFocusModel
public abstract class FocusModel<T>
extends Object Абстрактный базовый класс для реализации FocusModel.
- С момента:
- JavaFX 2.0
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
ReadOnlyIntegerProperty | focusedIndex | Индекс текущего элемента в FocusModel, имеющего фокус. |
ReadOnlyObjectProperty<T> | focusedItem | Текущий элемент в FocusModel, имеющий фокус. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
FocusModel() | Создает экземпляр FocusModel по умолчанию. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | focus(int index) | Вызывает получение фокуса элементом с заданным индексом. |
ReadOnlyIntegerProperty | focusedIndexProperty() | Индекс текущего элемента в FocusModel, имеющего фокус. |
ReadOnlyObjectProperty<T> | focusedItemProperty() | Текущий элемент в FocusModel, имеющий фокус. |
void | focusNext() | Попытка передать фокус на строку после текущей, имеющей фокус. |
void | focusPrevious() | Попытка передать фокус на строку перед текущей, имеющей фокус. |
int | getFocusedIndex() | Возвращает значение свойства focusedIndex. |
T | getFocusedItem() | Возвращает значение свойства focusedItem. |
protected abstract int | getItemCount() | Возвращает количество элементов в модели данных, которая лежит в основе управления. |
protected abstract T | getModelItem(int index) | Возвращает элемент по заданному индексу. |
boolean | isFocused(int index) | Удобный метод для информирования о том, имеет ли данный индекс фокус в данном SelectionModel. |
Подробности свойств
focusedIndex
public final ReadOnlyIntegerProperty focusedIndexProperty
Индекс текущего элемента в FocusModel, имеющего фокус. Возможна ситуация, когда он равен -1, но только если элемент управления пуст. Если само элемент управления не имеет фокуса, это свойство всё равно будет ссылаться на индекс строки, которая получит фокус клавиатуры, если бы само элемент управления имел фокус.
- См. также:
getFocusedIndex()
focusedItem
public final ReadOnlyObjectProperty<T> focusedItemProperty
Текущий элемент в FocusModel, имеющий фокус. Возможна ситуация, когда он равен null, но только если элемент управления пуст. Если само элемент управления не имеет фокуса, это свойство всё равно будет ссылаться на элемент, который получит фокус клавиатуры, если бы само элемент управления имел фокус.
- См. также:
getFocusedItem()
Подробности конструкторов
FocusModel
public FocusModel()
Создаёт экземпляр FocusModel по умолчанию.
Подробности методов
focusedIndexProperty
public final ReadOnlyIntegerProperty focusedIndexProperty()
Индекс текущего элемента в FocusModel, имеющего фокус. Возможна ситуация, когда он равен -1, но только если элемент управления пуст. Если само элемент управления не имеет фокуса, это свойство всё равно будет ссылаться на индекс строки, которая получит фокус клавиатуры, если бы само элемент управления имел фокус.
- См. также:
getFocusedIndex()
getFocusedIndex
public final int getFocusedIndex()
Получает значение свойства focusedIndex.
- Описание свойства:
- Индекс текущего элемента в FocusModel, имеющего фокус. Возможна ситуация, когда он равен -1, но только если элемент управления пуст. Если само элемент управления не имеет фокуса, это свойство всё равно будет ссылаться на индекс строки, которая получит фокус клавиатуры, если бы само элемент управления имел фокус.
focusedItemProperty
public final ReadOnlyObjectProperty<T> focusedItemProperty()
Текущий элемент в FocusModel, имеющий фокус. Возможна ситуация, когда он равен null, но только если элемент управления пуст. Если само элемент управления не имеет фокуса, это свойство всё равно будет ссылаться на элемент, который получит фокус клавиатуры, если бы само элемент управления имел фокус.
- См. также:
getFocusedItem()
getFocusedItem
public final T getFocusedItem()
Получает значение свойства focusedItem.
- Описание свойства:
- Текущий элемент в FocusModel, имеющий фокус. Возможна ситуация, когда он равен null, но только если элемент управления пуст. Если само элемент управления не имеет фокуса, это свойство всё равно будет ссылаться на элемент, который получит фокус клавиатуры, если бы само элемент управления имел фокус.
getItemCount
protected abstract int getItemCount()
Возвращает количество элементов в модели данных, на которой основано элемент управления. Например, для ListView это, вероятно, вернёт
listView.getItems().size(). Допустимый диапазон индексов, на которые можно сфокусироваться, находится между 0 и значением, возвращённым данным методом.- Возвращает:
- количество элементов в модели данных, на которой основано элемент управления
getModelItem
protected abstract T getModelItem(int index)
Возвращает элемент по заданному индексу. Пример использования с ListView:
listView.getItems().get(index).- Параметры:
-
index- Индекс элемента, запрашиваемого из основной модели данных. - Возвращает:
- Возвращает null, если индекс находится вне границ, или элемент типа T, связанный с данным индексом.
isFocused
public boolean isFocused(int index)
Удобный метод для определения, сфокусирован ли заданный индекс в данной SelectionModel. Функционально эквивалентен вызову
getFocusedIndex() == index.- Параметры:
-
index- Индекс, который нужно проверить на наличие фокуса. - Возвращает:
- True, если заданный индекс имеет фокус, иначе false.
focus
public void focus(int index)
Устанавливает фокус на элемент по заданному индексу. Это не изменяет текущий выбор. Обновляет свойства focusedItem и focusedIndex так, что
focusedIndex = -1, если 0 <= index < model size.- Параметры:
-
index- Индекс элемента, которому необходимо установить фокус.
focusPrevious
public void focusPrevious()
Попытка установить фокус на строку, предшествующую текущей. Если текущий элемент с фокусом находится на первой строке или имеет значение -1 (что обозначает, что текущего элемента с фокусом нет), вызов этого метода не приведёт к результату.
focusNext
public void focusNext()
Попытка установить фокус на строку, следующую за текущей. Если текущий элемент с фокусом находится на последней строке, вызов этого метода не приведёт к результату.
© 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.