Spec-Zone.ru › OpenJavaFX 24

Класс 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.

События "ввода символа с клавиатуры" являются более высокого уровня и, как правило, не зависят от платформы или раскладки клавиатуры. Они генерируются при вводе символа Юникод и являются предпочтительным способом получения информации о вводе символов. В простом случае, событие "ввода символа" создаётся одним нажатием клавиши (например, 'a'). Однако часто символы вводятся последовательностью нажатий (например, SHIFT + 'a'), и соответствие между событиями нажатия клавиш и событиями ввода символа может быть один-к-одному или много-к-одному. Отпускание клавиши обычно не требуется для генерации события ввода символа, но есть случаи, когда событие ввода символа не генерируется до тех пор, пока клавиша не будет отпущена (например, ввод ASCII-последовательностей с помощью метода Alt-Numpad в Windows). События ввода символа не генерируются для клавиш, не генерирующих символы Юникод (например, функциональные клавиши, клавиши модификаторов и т.д.).

Переменная character всегда содержит допустимый символ Юникод или CHAR_UNDEFINED. Ввод символов сообщается событиями ввода символа; события нажатия и отпускания клавиш не обязательно связаны с вводом символов. Поэтому переменная character гарантированно имеет значение только для событий ввода символа.

Для событий нажатия и отпускания клавиш переменная code содержит код клавиши события. Для событий ввода символа переменная code всегда содержит KeyCode.UNDEFINED.

События "нажатия клавиши" и "отпускания клавиши" являются более низкого уровня и зависят от платформы и раскладки клавиатуры. Они генерируются всякий раз, когда клавиша нажимается или отпускается, и являются единственным способом получения информации о клавишах, которые не генерируют ввод символов (например, функциональные клавиши, клавиши модификаторов и т.д.). Нажимаемая или отпускаемая клавиша указывается кодом, который содержит виртуальный код клавиши.

Для вызова контекстных меню см. ContextMenuEvent.

С:
JavaFX 2.0
См. также:
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
static final EventType<KeyEvent> ANY
Общий супертип для всех типов событий клавиш.
static final String CHAR_UNDEFINED
События KEY_PRESSED и KEY_RELEASED, которые не отображаются как допустимый символ Юникод, используются для значения 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()
Символ Юникод или последовательность символов, связанных с событием ввода символа с клавиатуры.
final KeyCode getCode()
Код клавиши, связанный с клавишей в данном событии нажатия или отпускания клавиши.
EventType<KeyEvent> getEventType()
Возвращает тип события этого события.
final String getText()
Строка, описывающая код клавиши, например, "HOME", "F1" или "A", для событий нажатия и отпускания клавиши.
final boolean isAltDown()
Возвращает значение, указывающее, нажата ли клавиша Alt в этом событии.
final boolean isControlDown()
Возвращает значение, указывающее, нажата ли клавиша Control в этом событии.
final boolean isMetaDown()
Возвращает значение, указывающее, нажата ли клавиша Meta в этом событии.
final boolean isShiftDown()
Возвращает значение, указывающее, нажата ли клавиша Shift в этом событии.
final boolean isShortcutDown()
Возвращает значение, указывающее, нажата ли клавиша быстрого доступа на платформе-хосте в этом событии.
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 и/или его аффилированные лица. Все права защищены.

© 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