Класс FocusEvent
- Все реализованные интерфейсы:
Serializable
public class FocusEvent extends ComponentEvent
FocusListener или FocusAdapter, зарегистрированному для получения таких событий с помощью метода addFocusListener компонента. (Объекты FocusAdapter реализуют интерфейс FocusListener.) Каждый такой объект-слушатель получает это событие FocusEvent при его возникновении. Существует два уровня событий фокуса: постоянные и временные. События постоянного изменения фокуса возникают, когда фокус непосредственно перемещается с одного компонента на другой, например, при вызове requestFocus() или когда пользователь перемещается между компонентами с помощью клавиши TAB. События временного изменения фокуса возникают, когда компонент временно теряет фокус в результате другой операции, например деактивации окна или перетаскивания полосы прокрутки. В этом случае исходное состояние фокуса автоматически восстанавливается после завершения операции или, в случае деактивации окна, после повторной активации окна. События постоянного и временного изменения фокуса передаются с использованием идентификаторов событий FOCUS_GAINED и FOCUS_LOST; уровень можно определить с помощью метода isTemporary().
Каждое событие FocusEvent фиксирует причину его возникновения. Причина назначается при создании события фокуса и может быть получена вызовом getCause().
Поведение не определено, если параметр id конкретного экземпляра FocusEvent не входит в диапазон от FOCUS_FIRST до FOCUS_LAST.
- Начиная с:
- 1.1
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static enum |
FocusEvent.Cause |
Это перечисление представляет причину события FocusEvent — причину, по которой оно произошло. |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
FOCUS_FIRST |
Первый номер в диапазоне идентификаторов, используемых для событий фокуса. |
static final int |
FOCUS_GAINED |
Это событие указывает, что компонент теперь является владельцем фокуса. |
static final int |
FOCUS_LAST |
Последний номер в диапазоне идентификаторов, используемых для событий фокуса. |
static final int |
FOCUS_LOST |
Это событие указывает, что компонент больше не является владельцем фокуса. |
Поля, объявленные в классе ComponentEvent
COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN
Поля, объявленные в классе AWTEvent
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK
Поля, объявленные в классе EventObject
source
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
FocusEvent |
Создает объект FocusEvent и обозначает изменение фокуса как постоянное. |
FocusEvent |
Создает объект FocusEvent и указывает, является ли изменение временным. |
FocusEvent |
Создает объект FocusEvent с указанным временным состоянием, противоположным Component, и причиной Cause.UNKNOWN. |
FocusEvent |
Создает объект FocusEvent с указанным временным состоянием, противоположным Component, и указанной причиной. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final FocusEvent.Cause |
getCause() |
Возвращает причину события. |
Component |
getOppositeComponent() |
Возвращает другой компонент, участвующий в этом изменении фокуса. |
boolean |
isTemporary() |
Определяет, является ли событие изменения фокуса временным или постоянным. |
String |
paramString() |
Возвращает строку параметров, описывающую это событие. |
Методы, объявленные в классе ComponentEvent
getComponent
Методы, объявленные в классе EventObject
getSource
Подробное описание полей
FOCUS_FIRST
public static final int FOCUS_FIRST
- См. также:
FOCUS_LAST
public static final int FOCUS_LAST
- См. также:
FOCUS_GAINED
public static final int FOCUS_GAINED
- См. также:
FOCUS_LOST
public static final int FOCUS_LOST
- См. также:
Подробное описание конструкторов
FocusEvent
public FocusEvent(Component source, int id, boolean temporary, Component opposite)
FocusEvent с указанным временным состоянием, противоположным Component, и причиной Cause.UNKNOWN. Противоположный Component — это другой Component, участвующий в этом изменении фокуса. Для события FOCUS_GAINED это Component, потерявший фокус. Для события FOCUS_LOST это Component, получивший фокус. Если это изменение фокуса происходит в собственном приложении, в Java-приложении в другой виртуальной машине или при отсутствии другого Component, противоположный Component равен null. Этот метод вызывает исключение IllegalArgumentException, если source равно null.
- Параметры:
-
source—Component, породивший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаFocusEvent -
temporary— равноtrue, если изменение фокуса временное; в противном случае —false -
opposite— другой компонент, участвующий в изменении фокуса, илиnull - Исключения:
-
IllegalArgumentException— еслиsourceравноnull - Начиная с:
- 1.4
- См. также:
FocusEvent
public FocusEvent(Component source, int id, boolean temporary, Component opposite, FocusEvent.Cause cause)
FocusEvent с указанным временным состоянием, противоположным Component, и указанной причиной. Противоположный Component — это другой Component, участвующий в этом изменении фокуса. Для события FOCUS_GAINED это Component, потерявший фокус. Для события FOCUS_LOST это Component, получивший фокус. Если это изменение фокуса происходит в собственном приложении, в Java-приложении в другой виртуальной машине или при отсутствии другого Component, противоположный Component равен null. Этот метод вызывает исключение IllegalArgumentException, если source или cause равно null.
- Параметры:
-
source—Component, породивший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаFocusEvent -
temporary— равноtrue, если изменение фокуса временное; в противном случае —false -
opposite— другой компонент, участвующий в изменении фокуса, илиnull -
cause— причина события фокуса. - Исключения:
-
IllegalArgumentException— еслиsourceравноnullили еслиcauseравноnull - Начиная с:
- 9
- См. также:
FocusEvent
public FocusEvent(Component source, int id, boolean temporary)
FocusEvent и указывает, является ли изменение временным. Этот метод вызывает исключение IllegalArgumentException, если source равно null.
- Параметры:
-
source—Component, породивший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаFocusEvent -
temporary— равноtrue, если изменение фокуса временное; в противном случае —false - Исключения:
-
IllegalArgumentException— еслиsourceравноnull - См. также:
FocusEvent
public FocusEvent(Component source, int id)
FocusEvent и обозначает изменение фокуса как постоянное. Этот метод вызывает исключение IllegalArgumentException, если source равно null.
- Параметры:
-
source—Component, породивший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаFocusEvent - Исключения:
-
IllegalArgumentException— еслиsourceравноnull - См. также:
Подробное описание методов
isTemporary
public boolean isTemporary()
- Возвращает:
-
true, если изменение фокуса временное; в противном случае —false
getOppositeComponent
public Component getOppositeComponent()
- Возвращает:
- другой компонент, участвующий в изменении фокуса, или null
- Начиная с:
- 1.4
paramString
public String paramString()
- Переопределяет:
-
paramStringв классеComponentEvent - Возвращает:
- строку, описывающую событие и его атрибуты
getCause
public final FocusEvent.Cause getCause()
- Возвращает:
- одно из значений
FocusEvent.Cause - Начиная с:
- 9
© 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/event/FocusEvent.html