Класс KeyEvent
- Все реализованные интерфейсы:
-
Serializable,Cloneable
public final class KeyEvent extends InputEvent
Node. Это событие генерируется при нажатии, отпускании или вводе клавиши. В зависимости от типа события, оно передаётся в функции onKeyPressed, onKeyTyped или onKeyReleased.
События "ввода символа" имеют более высокий уровень и, как правило, не зависят от платформы или раскладки клавиатуры. Они генерируются при вводе Unicode-символа и являются предпочтительным способом получения информации о вводе символов. В простейшем случае событие ввода символа генерируется при одном нажатии клавиши (например, 'a'). Однако часто символы генерируются цепочкой нажатий клавиш (например, SHIFT + 'a'), и отображение от нажатий клавиш к событиям ввода символов может быть один-к-одному или многие-ко-многим. Отпускание клавиш обычно не требуется для генерации события ввода символа, но существуют случаи, когда событие ввода символа не генерируется до отпускания клавиши (например, ввод ASCII-последовательностей с помощью метода Alt-Numpad в Windows). События ввода символа не генерируются для клавиш, которые не генерируют Unicode-символы (например, управляющие клавиши, модификаторы и т. д.).
Переменная character всегда содержит допустимый Unicode-символ(ы) или CHAR_UNDEFINED. Ввод символов отслеживается событиями ввода символов; события нажатия и отпускания клавиш необязательно связаны с вводом символов. Поэтому переменная character гарантированно имеет смысл только для событий ввода символов.
Для событий нажатия и отпускания клавиш переменная code содержит код клавиши события. Для событий ввода символов переменная code всегда содержит KeyCode.UNDEFINED.
События "нажатия клавиши" и "отпускания клавиши" имеют более низкий уровень и зависят от платформы и раскладки клавиатуры. Они генерируются при каждом нажатии или отпускании клавиши и являются единственным способом получения информации о клавишах, которые не генерируют ввод символов (например, управляющие клавиши, модификаторы и т. д.). Нажатая или отпущенная клавиша указывается кодом, содержащим виртуальный код клавиши.
Для вызова контекстных меню см. ContextMenuEvent.
- Since:
- JavaFX 2.0
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final EventType<KeyEvent> |
ANY |
Общий супертип для всех типов событий клавиш. |
static final String |
CHAR_UNDEFINED |
События KEY_PRESSED и KEY_RELEASED, которые не отображаются в допустимый Unicode-символ, используют это для значения keyChar. |
static final EventType<KeyEvent> |
KEY_PRESSED |
Это событие происходит при нажатии клавиши. |
static final EventType<KeyEvent> |
KEY_RELEASED |
Это событие происходит при отпускании клавиши. |
static final EventType<KeyEvent> |
KEY_TYPED |
Это событие происходит при вводе символа (нажатии и отпускании) клавиши, генерирующей символ. |
Поля, объявленные в классе javafx.event.Event
consumed, eventType, NULL_SOURCE_TARGET, target
Поля, объявленные в классе java.util.EventObject
source
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
KeyEvent |
Создаёт новое событие KeyEvent из заданных параметров. |
KeyEvent |
Создаёт новое событие KeyEvent из заданных параметров, с источником и целевой областью null. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
KeyEvent |
copyFor |
Создаёт и возвращает копию этого события с указанным источником и целевой областью события. |
KeyEvent |
copyFor |
Создаёт копию данного события с заменёнными полями. |
final String |
getCharacter() |
Unicode-символ или последовательность символов, связанные с событием ввода символа. |
final KeyCode |
getCode() |
Код клавиши, связанный с клавишей в этом событии нажатия или отпускания клавиши. |
EventType<KeyEvent> |
getEventType() |
Возвращает тип события данного события. |
final String |
getText() |
Строка, описывающая код клавиши, например, "HOME", "F1" или "A", для событий нажатия и отпускания клавиш. |
final boolean |
isAltDown() |
Возвращает значение true, если модификатор Alt нажат в этом событии. |
final boolean |
isControlDown() |
Возвращает значение true, если модификатор Control нажат в этом событии. |
final boolean |
isMetaDown() |
Возвращает значение true, если модификатор Meta нажат в этом событии. |
final boolean |
isShiftDown() |
Возвращает значение true, если модификатор Shift нажат в этом событии. |
final boolean |
isShortcutDown() |
Возвращает значение true, если модификатор сокращения, общий для платформы, нажат в этом событии. |
String |
toString() |
Возвращает строковое представление этого объекта KeyEvent. |
Методы, объявленные в классе java.util.EventObject
getSource
Подробное описание полей
ANY
public static final EventType<KeyEvent> ANY
KEY_PRESSED
public static final EventType<KeyEvent> KEY_PRESSED
KEY_RELEASED
public static final EventType<KeyEvent> KEY_RELEASED
KEY_TYPED
public static final EventType<KeyEvent> KEY_TYPED
character, содержащее набранную строку, поля code и text не используются.CHAR_UNDEFINED
public static final String CHAR_UNDEFINED
Подробное описание конструкторов
KeyEvent
public KeyEvent(Object source, EventTarget target, EventType<KeyEvent> eventType, String character, String text, KeyCode code, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown)
KeyEvent на основе указанных параметров.- Параметры:
-
source- источник события. Может быть null. -
target- целевой объект события. Может быть null. -
eventType- тип события. -
character- Символ или последовательность символов, связанных с событием. -
text- Строка, описывающая код клавиши. -
code- Код клавиши в виде целого числа. -
shiftDown- true, если нажата клавиша Shift. -
controlDown- true, если нажата клавиша Control. -
altDown- true, если нажата клавиша Alt. -
metaDown- true, если нажата клавиша Meta. - С момента:
- JavaFX 8.0
KeyEvent
public KeyEvent(EventType<KeyEvent> eventType, String character, String text, KeyCode code, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown)
KeyEvent на основе указанных параметров, с null источником и целевым объектом.- Параметры:
-
eventType- тип события. -
character- Символ или последовательность символов, связанных с событием. -
text- Строка, описывающая код клавиши. -
code- Код клавиши в виде целого числа. -
shiftDown- true, если нажата клавиша Shift. -
controlDown- true, если нажата клавиша Control. -
altDown- true, если нажата клавиша Alt. -
metaDown- true, если нажата клавиша Meta. - С момента:
- JavaFX 8.0
Подробное описание методов
getCharacter
public final String getCharacter()
Например, character будет иметь значение "A" для события набора клавиш, сгенерированного нажатием SHIFT + 'a'. Для событий нажатия и отпускания клавиш character всегда равно CHAR_UNDEFINED.
- Возвращает:
- Символ(ы) Юникода, связанные с событием набора клавиш
getText
public final String getText()
text всегда пустая строка.- Возвращает:
- Строка, описывающая код клавиши
getCode
public final KeyCode getCode()
code всегда равно KeyCode.UNDEFINED.- Возвращает:
- Код клавиши, связанный с этой клавишей в этом событии,
KeyCode.UNDEFINEDдля события набора клавиш
isShiftDown
public final boolean isShiftDown()
- Возвращает:
- нажата ли клавиша Shift в этом событии.
isControlDown
public final boolean isControlDown()
- Возвращает:
- нажата ли клавиша Control в этом событии.
isAltDown
public final boolean isAltDown()
- Возвращает:
- нажата ли клавиша Alt в этом событии.
isMetaDown
public final boolean isMetaDown()
- Возвращает:
- нажата ли клавиша Meta в этом событии.
isShortcutDown
public final boolean isShortcutDown()
control на Windows и meta (клавиша Command) на Mac.- Возвращает:
-
trueесли клавиша-модификатор сокращения нажата,falseв противном случае
toString
public String toString()
KeyEvent.- Переопределяет:
-
toStringв классеEventObject - Возвращает:
- строковое представление этого объекта
KeyEvent.
copyFor
public KeyEvent copyFor(Object newSource, EventTarget newTarget)
Eventnull, он заменяется значением по умолчанию NULL_SOURCE_TARGET.- Переопределяет:
-
copyForв классеEvent - Параметры:
-
newSource- новый источник скопированного события -
newTarget- новый целевой объект скопированного события - Возвращает:
- копию события с новым источником и целевым объектом
copyFor
public KeyEvent copyFor(Object source, EventTarget target, EventType<KeyEvent> type)
- Параметры:
-
source- новый источник скопированного события -
target- новый целевой объект скопированного события -
type- новый тип события. - Возвращает:
- копию события с заменёнными полями
- С момента:
- JavaFX 8.0
getEventType
public EventType<KeyEvent> getEventType()
EventEvent могут иметь разные типы событий. Эти типы событий дополнительно указывают, какой вид события произошел.- Переопределяет:
-
getEventTypeв классеEvent - Возвращает:
- тип события
© 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.