Spec-Zone.ru › OpenJDK 24

Класс FocusTraversalPolicy

java.lang.Object
java.awt.FocusTraversalPolicy
Прямые известные подклассы:
ContainerOrderFocusTraversalPolicy, InternalFrameFocusTraversalPolicy
public abstract class FocusTraversalPolicy extends Object
Политика FocusTraversalPolicy определяет порядок, в котором компоненты с конкретным корнем цикла фокуса перебираются. Экземпляры могут применять политику к произвольным корням цикла фокуса, позволяя себе быть общими для нескольких контейнеров. Им не нужно повторное инициализирование при изменении корней цикла фокуса в иерархии компонентов.

Основная задача FocusTraversalPolicy — предоставление алгоритмов определения следующих и предыдущих компонентов для получения фокуса при перемещении вперёд или назад в пользовательском интерфейсе. Каждый FocusTraversalPolicy также должен предоставлять алгоритмы определения первого, последнего и стандартного компонентов в цикле перебора. Первые и последние компоненты используются, когда стандартный перебор вперёд и назад, соответственно, завершается. Стандартный компонент — это первый, который получает фокус при переходе в новый цикл перебора фокуса. FocusTraversalPolicy может (по выбору) предоставить алгоритм определения начального компонента окна. Начальный компонент — это первый, который получает фокус, когда окно впервые становится видимым.

FocusTraversalPolicy учитывает поставщиков политики перебора фокуса. При поиске первого/последнего/следующего/предыдущего компонента, если встречается поставщик политики перебора фокуса, используется его политика перебора фокуса для выполнения операции поиска.

Дополнительную информацию можно найти в Руководстве по использованию подсистемы фокуса, разделе в Java Tutorial, и в Спецификации фокуса.

С тех пор как:
1.4
См. также:
  • Container.setFocusTraversalPolicy(java.awt.FocusTraversalPolicy)
  • Container.getFocusTraversalPolicy()
  • Container.setFocusCycleRoot(boolean)
  • Container.isFocusCycleRoot(java.awt.Container)
  • Container.setFocusTraversalPolicyProvider(boolean)
  • Container.isFocusTraversalPolicyProvider()
  • KeyboardFocusManager.setDefaultFocusTraversalPolicy(java.awt.FocusTraversalPolicy)
  • KeyboardFocusManager.getDefaultFocusTraversalPolicy()

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

FocusTraversalPolicy()
Модификатор Конструктор Описание
protected
Создаёт FocusTraversalPolicy.

Краткое описание методов

Модификатор и тип Метод Описание
abstract Component getComponentAfter(Container aContainer, Component aComponent)
Возвращает компонент, который должен получить фокус после aComponent.
abstract Component getComponentBefore(Container aContainer, Component aComponent)
Возвращает компонент, который должен получить фокус перед aComponent.
abstract Component getDefaultComponent(Container aContainer)
Возвращает стандартный компонент для фокуса.
abstract Component getFirstComponent(Container aContainer)
Возвращает первый компонент в цикле перебора.
Component getInitialComponent(Window window)
Возвращает компонент, который должен получить фокус, когда окно становится видимым в первый раз.
abstract Component getLastComponent(Container aContainer)
Возвращает последний компонент в цикле перебора.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

FocusTraversalPolicy

protected FocusTraversalPolicy()
Создаёт FocusTraversalPolicy.

Подробное описание методов

getComponentAfter

public abstract Component getComponentAfter(Container aContainer, Component aComponent)
Возвращает компонент, который должен получить фокус после aComponent. aContainer должен быть корнем цикла фокуса для aComponent или поставщиком политики перебора фокуса.
Параметры:
aContainer - корень цикла фокуса для aComponent или поставщик политики перебора фокуса
aComponent - (возможно, косвенный) дочерний элемент aContainer или сам aContainer
Возвращает:
компоненты, которые должны получить фокус после aComponent, или null, если подходящий компонент не найден
Исключения:
IllegalArgumentException - если aContainer не является корнем цикла фокуса для aComponent или поставщиком политики перебора фокуса, или если aContainer или aComponent равны null

getComponentBefore

public abstract Component getComponentBefore(Container aContainer, Component aComponent)
Возвращает компонент, который должен получить фокус перед aComponent. aContainer должен быть корнем цикла фокуса для aComponent или поставщиком политики перебора фокуса.
Параметры:
aContainer - корень цикла фокуса для aComponent или поставщик политики перебора фокуса
aComponent - (возможно, косвенный) дочерний элемент aContainer или сам aContainer
Возвращает:
компоненты, которые должны получить фокус перед aComponent, или null, если подходящий компонент не найден
Исключения:
IllegalArgumentException - если aContainer не является корнем цикла фокуса для aComponent или поставщиком политики перебора фокуса, или если aContainer или aComponent равны null

getFirstComponent

public abstract Component getFirstComponent(Container aContainer)
Возвращает первый компонент в цикле перебора. Этот метод используется для определения следующего компонента для получения фокуса при завершении перебора в прямом направлении.
Параметры:
aContainer - корень цикла фокуса или поставщик политики перебора фокуса, первый компонент которого требуется вернуть
Возвращает:
первый компонент в цикле перебора aContainer, или null, если подходящий компонент не найден
Исключения:
IllegalArgumentException - если aContainer равен null

getLastComponent

public abstract Component getLastComponent(Container aContainer)
Возвращает последний компонент в цикле перебора. Этот метод используется для определения следующего компонента для получения фокуса при завершении перебора в обратном направлении.
Параметры:
aContainer - корень цикла фокуса или поставщик политики перебора фокуса, последний компонент которого требуется вернуть
Возвращает:
последний компонент в цикле перебора aContainer, или null, если подходящий компонент не найден
Исключения:
IllegalArgumentException - если aContainer равен null

getDefaultComponent

public abstract Component getDefaultComponent(Container aContainer)
Возвращает стандартный компонент для фокуса. Этот компонент будет первым, который получит фокус при переходе в новый цикл перебора фокуса, укоренённый в aContainer.
Параметры:
aContainer - корень цикла фокуса или поставщик политики перебора фокуса, стандартный компонент которого требуется вернуть
Возвращает:
стандартный компонент в цикле перебора aContainer, или null, если подходящий компонент не найден
Исключения:
IllegalArgumentException - если aContainer равен null

getInitialComponent

public Component getInitialComponent(Window window)
Возвращает компонент, который должен получить фокус, когда окно становится видимым в первый раз. После того, как окно было сделано видимым вызовом show() или setVisible(true), начальный компонент больше не будет использоваться. Вместо этого, если окно теряет и впоследствии вновь получает фокус, или становится невидимым или неотображаемым, а затем снова видимым и отображаемым, последний получивший фокус компонент в окне станет владельцем фокуса. Стандартная реализация этого метода возвращает стандартный компонент.
Параметры:
window - окно, начальный компонент которого требуется вернуть
Возвращает:
компонент, который должен получить фокус, когда окно становится видимым в первый раз, или null, если подходящий компонент не найден
Исключения:
IllegalArgumentException - если окно равно null
См. также:
  • getDefaultComponent(java.awt.Container)
  • Window.getMostRecentFocusOwner()

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/FocusTraversalPolicy.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API