Class InputEventKey
Represents a key on a keyboard being pressed or released.
- Inheritance
-
InputEventKey
Remarks
An input event for keys on a keyboard. Supports key presses, key releases and echo events. It can also be received in Node._unhandled_key_input.
Note: Events received from the keyboard usually have all properties set. Event mappings should have only one of the keycode, physical_keycode or unicode set.
When events are compared, properties are checked in the following priority - keycode, physical_keycode and unicode. Events with the first matching value will be considered equal.
See Also
Properties
echo
If true
, the key was already pressed before this event. An echo event is a repeated key event sent when the user is holding down the key.
Note: The rate at which echo events are sent is typically around 20 events per second (after holding down the key for roughly half a second). However, the key repeat delay/speed can be changed by the user or disabled entirely in the operating system settings. To ensure your project works correctly on all configurations, do not assume the user has a specific key repeat configuration in your project's behavior.
var echo : bool = false
Property Value
Remarks
key_label
Represents the localized label printed on the key in the current keyboard layout, which corresponds to one of the Key constants or any valid Unicode character.
For keyboard layouts with a single label on the key, it is equivalent to keycode.
To get a human-readable representation of the InputEventKey, use OS.get_keycode_string(event.key_label)
where event
is the InputEventKey.
+-----+ +-----+
| Q | | Q | - "Q" - keycode
| Й | | ض | - "Й" and "ض" - key_label
+-----+ +-----+
var key_label : int = 0
Property Value
Remarks
keycode
Latin label printed on the key in the current keyboard layout, which corresponds to one of the Key constants.
To get a human-readable representation of the InputEventKey, use OS.get_keycode_string(event.keycode)
where event
is the InputEventKey.
+-----+ +-----+
| Q | | Q | - "Q" - keycode
| Й | | ض | - "Й" and "ض" - key_label
+-----+ +-----+
var keycode : int = 0
Property Value
Remarks
location
Represents the location of a key which has both left and right versions, such as Shift
or Alt
.
var location : int = 0
Property Value
Remarks
physical_keycode
Represents the physical location of a key on the 101/102-key US QWERTY keyboard, which corresponds to one of the Key constants.
To get a human-readable representation of the InputEventKey, use OS.get_keycode_string in combination with DisplayServer.keyboard_get_keycode_from_physical:
var physical_keycode : int = 0
Property Value
Remarks
pressed
If true
, the key's state is pressed. If false
, the key's state is released.
var pressed : bool = false
Property Value
Remarks
unicode
The key Unicode character code (when relevant), shifted by modifier keys. Unicode character codes for composite characters and complex scripts may not be available unless IME input mode is active. See Window.set_ime_active for more information.
var unicode : int = 0
Property Value
Remarks
Methods
as_text_key_label
String as_text_key_label
as_text_keycode
String as_text_keycode
as_text_location
Qualifiers: const
Returns a String representation of the event's location. This will be a blank string if the event is not specific to a location.
String as_text_location
as_text_physical_keycode
Qualifiers: const
Returns a String representation of the event's physical_keycode and modifiers.
String as_text_physical_keycode
get_key_label_with_modifiers
Qualifiers: const
Returns the localized key label combined with modifier keys such as Shift
or Alt
. See also InputEventWithModifiers.
To get a human-readable representation of the InputEventKey with modifiers, use OS.get_keycode_string(event.get_key_label_with_modifiers())
where event
is the InputEventKey.
int get_key_label_with_modifiers
get_keycode_with_modifiers
Qualifiers: const
Returns the Latin keycode combined with modifier keys such as Shift
or Alt
. See also InputEventWithModifiers.
To get a human-readable representation of the InputEventKey with modifiers, use OS.get_keycode_string(event.get_keycode_with_modifiers())
where event
is the InputEventKey.
int get_keycode_with_modifiers
get_physical_keycode_with_modifiers
Qualifiers: const
Returns the physical keycode combined with modifier keys such as Shift
or Alt
. See also InputEventWithModifiers.
To get a human-readable representation of the InputEventKey with modifiers, use OS.get_keycode_string(event.get_physical_keycode_with_modifiers())
where event
is the InputEventKey.
int get_physical_keycode_with_modifiers