Класс FocusTraversalPolicy
- java.lang.Object
-
- java.awt.FocusTraversalPolicy
- Прямые известные подклассы:
-
ContainerOrderFocusTraversalPolicy,InternalFrameFocusTraversalPolicy
public abstract class FocusTraversalPolicy extends Object
Класс FocusTraversalPolicy определяет порядок, в котором компоненты с определенной корневой точкой фокусировки просматриваются. Экземпляры могут применять политику к произвольным корням цикла фокусировки, позволяя им быть общими для различных контейнеров. Их не нужно переинициализировать, когда корни цикла фокусировки иерархии компонентов изменяются.
Основная ответственность FocusTraversalPolicy заключается в предоставлении алгоритмов, определяющих следующие и предыдущие компоненты для фокусировки при просмотре вперед или назад в пользовательском интерфейсе. Каждый FocusTraversalPolicy должен также предоставить алгоритмы для определения первого, последнего и стандартного компонентов в цикле просмотра. Первые и последние компоненты используются при обычном просмотре вперед и назад соответственно. Стандартный компонент — это первый, который получает фокус при переходе в новый цикл просмотра фокуса. FocusTraversalPolicy может по желанию предоставить алгоритм для определения начального компонента окна. Начальный компонент — это первый, который получает фокус, когда окно впервые становится видимым.
FocusTraversalPolicy учитывает поставщиков политик просмотра фокуса. При поиске первого/последнего/следующего/предыдущего компонента, если обнаружен поставщик политик просмотра фокуса, используется его политика просмотра фокуса для выполнения операции поиска.
Дополнительную информацию см. в разделе Как использовать подсистему фокуса в учебном пособии Java и в Спецификации фокуса.
- С момента:
- 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() |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
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
public 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, 2020, 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://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/FocusTraversalPolicy.html