Класс FocusTraversalPolicy
- Прямые известные подклассы:
ContainerOrderFocusTraversalPolicy, InternalFrameFocusTraversalPolicy
public abstract class FocusTraversalPolicy extends Object
Основная задача FocusTraversalPolicy — предоставлять алгоритмы определения следующего и предыдущего компонентов, получающих фокус при обходе пользовательского интерфейса вперед или назад. Каждая FocusTraversalPolicy также должна предоставлять алгоритмы определения первого, последнего и компонента по умолчанию в цикле обхода. Первый и последний компоненты используются соответственно при переходе вперед и назад, когда обход циклически возвращается к началу. Компонент по умолчанию первым получает фокус при переходе внутрь нового цикла обхода фокуса. FocusTraversalPolicy может дополнительно предоставлять алгоритм определения начального компонента окна. Начальный компонент первым получает фокус при первом отображении окна.
FocusTraversalPolicy учитывает поставщиков политик обхода фокуса. При поиске первого, последнего, следующего или предыдущего компонента, если встречается поставщик политики обхода фокуса, для выполнения поиска используется его политика обхода фокуса.
Дополнительную информацию см. в разделе «Использование подсистемы фокуса» учебника «Учебник Java», а также в спецификации фокуса.
- Начиная с:
- 1.4
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает FocusTraversalPolicy. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract Component |
getComponentAfter |
Возвращает компонент, который должен получить фокус после aComponent. aContainer должен быть корнем цикла обхода фокуса для aComponent или поставщиком политики обхода фокуса. |
abstract Component |
getComponentBefore |
Возвращает компонент, который должен получить фокус перед aComponent. aContainer должен быть корнем цикла обхода фокуса для aComponent или поставщиком политики обхода фокуса. |
abstract Component |
getDefaultComponent |
Возвращает компонент, на который следует установить фокус по умолчанию. |
abstract Component |
getFirstComponent |
Возвращает первый компонент в цикле обхода. |
Component |
getInitialComponent |
Возвращает компонент, который должен получить фокус при первом отображении окна. |
abstract Component |
getLastComponent |
Возвращает последний компонент в цикле обхода. |
Подробное описание конструкторов
FocusTraversalPolicy
protected FocusTraversalPolicy()
FocusTraversalPolicy.Подробное описание методов
getComponentAfter
public abstract Component getComponentAfter(Container aContainer, Component aComponent)
- Параметры:
-
aContainer— корень цикла обхода фокуса для aComponent или поставщик политики обхода фокуса -
aComponent— (возможно, косвенный) дочерний элемент aContainer или сам aContainer - Возвращает:
- компонент, который должен получить фокус после aComponent, или null, если подходящий компонент не найден
- Вызывает исключение:
-
IllegalArgumentException— если aContainer не является корнем цикла обхода фокуса для aComponent или поставщиком политики обхода фокуса либо если aContainer или aComponent равен null
getComponentBefore
public abstract Component getComponentBefore(Container aContainer, Component 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 или null, если подходящий компонент не найден
- Вызывает исключение:
-
IllegalArgumentException— если aContainer равен null
getInitialComponent
public Component getInitialComponent(Window window)
show() или setVisible(true), начальный компонент больше не используется. Вместо этого, если окно теряет, а затем снова получает фокус, либо становится невидимым или недоступным для отображения, а затем снова становится видимым и доступным для отображения, владельцем фокуса становится компонент окна, на котором фокус находился в последний раз. Реализация этого метода по умолчанию возвращает компонент по умолчанию.- Параметры:
-
window— окно, начальный компонент которого требуется вернуть - Возвращает:
- компонент, который должен получить фокус при первом отображении окна, или null, если подходящий компонент не найден
- Вызывает исключение:
-
IllegalArgumentException— если window равен null - См. также:
© 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://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/FocusTraversalPolicy.html