Spec-Zone.ru › OpenJavaFX 21

Класс KeyEvent

java.lang.Object
java.util.EventObject
javafx.event.Event
javafx.scene.input.InputEvent
javafx.scene.input.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(Object source, EventTarget target, EventType<KeyEvent> eventType, String character, String text, KeyCode code, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown)
Создаёт новое событие KeyEvent из заданных параметров.
KeyEvent(EventType<KeyEvent> eventType, String character, String text, KeyCode code, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown)
Создаёт новое событие KeyEvent из заданных параметров, с источником и целевой областью null.

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

Модификатор и тип Метод Описание
KeyEvent copyFor(Object newSource, EventTarget newTarget)
Создаёт и возвращает копию этого события с указанным источником и целевой областью события.
KeyEvent copyFor(Object source, EventTarget target, EventType<KeyEvent> type)
Создаёт копию данного события с заменёнными полями.
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.

Методы, объявленные в классе javafx.event.Event

clone, consume, fireEvent, getTarget, isConsumed

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

getSource

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

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

Подробное описание полей

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
События KEY_PRESSED и KEY_RELEASED, которые не отображаются как допустимый символ Юникода, используют это значение для keyChar.

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

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()
Символ Юникода или последовательность символов, связанных с событием набора клавиш. Содержит несколько элементов, если клавиша сгенерировала одиночный символ Юникода вне Основной многоязычной плоскости, который необходимо закодировать с помощью соответствующей пары суррогатов в Java, или если сама клавиша сгенерировала несколько символов Юникода.

Например, character будет иметь значение "A" для события набора клавиш, сгенерированного нажатием SHIFT + 'a'. Для событий нажатия и отпускания клавиш character всегда равно CHAR_UNDEFINED.

Возвращает:
Символ(ы) Юникода, связанные с событием набора клавиш

getText

public final String getText()
Строка, описывающая код клавиши, например, "HOME", "F1" или "A", для событий нажатия и отпускания клавиш. Для событий набора клавиш text всегда пустая строка.
Возвращает:
Строка, описывающая код клавиши

getCode

public final KeyCode getCode()
Код клавиши, связанной с нажатой или отпущенной клавишей в этом событии. Для событий набора клавиш code всегда равно KeyCode.UNDEFINED.
Возвращает:
Код клавиши, связанный с этой клавишей в этом событии, KeyCode.UNDEFINED для события набора клавиш

isShiftDown

public final boolean isShiftDown()
Возвращает, нажата ли клавиша Shift в этом событии.
Возвращает:
нажата ли клавиша Shift в этом событии.

isControlDown

public final boolean isControlDown()
Возвращает, нажата ли клавиша Control в этом событии.
Возвращает:
нажата ли клавиша Control в этом событии.

isAltDown

public final boolean isAltDown()
Возвращает, нажата ли клавиша Alt в этом событии.
Возвращает:
нажата ли клавиша Alt в этом событии.

isMetaDown

public final boolean isMetaDown()
Возвращает, нажата ли клавиша Meta в этом событии.
Возвращает:
нажата ли клавиша 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)
Описание скопировано из класса: Event
Создаёт и возвращает копию этого события с указанным источником и целевым объектом. Если источник или целевой объект задан как null, он заменяется значением по умолчанию 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()
Описание скопировано из класса: Event
Получает тип события данного события. Объекты одного и того же класса Event могут иметь разные типы событий. Эти типы событий дополнительно указывают, какой вид события произошел.
Переопределяет:
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.

Spec-Zone.ru

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