InputEventKey

Успадковує: InputEventWithModifiers < InputEventFromWindow < InputEvent < Resource < RefCounted < Object

Представляє ключ на клавіатурі, що натискається або звільняється.

Опис

Вхідний захід для клавіш на клавіатурі. Підтримує ключові преси, ключові релізи та події echo. Також можна отримати в Node._unhandled_key_input().

Примітка: Події, отримані з клавіатури, зазвичай мають всі властивості, встановлених. У випадку, якщо у вас є тільки один з keycode, physical_keycode або unicode.

Коли події порівнюються, властивості перевіряють в наступному пріоритеті - keycode, physical_keycode і unicode. Події з першим відповідним значенням будуть розглянуті рівні.

Посібники

Властивості

bool

echo

false

Key

key_label

0

Key

keycode

0

KeyLocation

location

0

Key

physical_keycode

0

bool

pressed

false

int

unicode

0

Методи

String

as_text_key_label() const

String

as_text_keycode() const

String

as_text_location() const

String

as_text_physical_keycode() const

Key

get_key_label_with_modifiers() const

Key

get_keycode_with_modifiers() const

Key

get_physical_keycode_with_modifiers() const


Описи властивостей

bool echo = false 🔗

  • void set_echo(value: bool)

  • bool is_echo()

Якщо true, ключ вже притискався до цього заходу. Якщо користувач тримає ключ.

Примітка: Ставка, на яку надсилаються події ехо, як правило, близько 20 подій на другий (після завершення ключа на нерівномірну половину другого). Тим не менше, затримка ключа / швидкість може бути змінена користувачем або повністю вимкнена в налаштуваннях операційної системи. Щоб переконатися, що ваш проект працює правильно на всіх конфігураціях, не припустимо, користувач має конкретну функцію повторення ключів у своїй поведінки проекту.


Key key_label = 0 🔗

  • void set_key_label(value: Key)

  • Key get_key_label()

Представляє локалізований етикеток, надрукований на ключі в поточному розкладі клавіатури, який відповідає одному з констанцій Key або будь-яким дійсним символом Unicode.

Для клавіатурних макетів з одним етикеткою на ключі, він еквівалентний keycode.

OS.get_keycode_string(event.key_label), де `` event`` є InputEventKey.

+-----+ +-----+
| Q   | | Q   | - "Q" - keycode
|   Й | |  ض | - "Й" and "ض" - key_label
+-----+ +-----+

Key keycode = 0 🔗

  • void set_keycode(value: Key)

  • Key get_keycode()

Латинська етикетка, надрукована на ключі в поточному розкладі клавіатури, яка відповідає одному з констанцій Key.

OS.get_keycode_string(event.keycode), де event є InputEventKey.

+-----+ +-----+
| Q   | | Q   | - "Q" - keycode
|   Й | |  ض | - "Й" and "ض" - key_label
+-----+ +-----+

KeyLocation location = 0 🔗

Представляє розташування ключа, який має як ліві, так і праві версії, такі як Shift або Alt.


Key physical_keycode = 0 🔗

  • void set_physical_keycode(value: Key)

  • Key get_physical_keycode()

Представляє фізичне розташування клавіші на 101/102-клавішній клавіатурі US QWERTY, яка відповідає одній з констант Key.

Щоб отримати зрозуміле для людини представлення InputEventKey, використовуйте OS.get_keycode_string() у поєднанні з of DisplayServer.keyboard_get_keycode_from_physical():

func _input(event):
    if event is InputEventKey:
        var keycode = DisplayServer.keyboard_get_keycode_from_physical(event.physical_keycode)
        print(OS.get_keycode_string(keycode))

bool pressed = false 🔗

  • void set_pressed(value: bool)

  • bool is_pressed()

Якщо true, натискається ключовий стан. Якщо false, випущена ключова держава.


int unicode = 0 🔗

  • void set_unicode(value: int)

  • int get_unicode()

Ключовий код символу Unicode (якщо доречно), зміщений клавішами-модифікаторами. Коди символів Юнікод для складених символів і складних сценаріїв можуть бути недоступні, якщо режим введення IME не активний. Для отримання додаткової інформації див. Window.set_ime_active().


Описи методів

String as_text_key_label() const 🔗

Повертає рядкове представлення String мітки_ключа_учасника key_label та модифікаторів події.


String as_text_keycode() const 🔗

Повертає рядкове представлення String коду клавіші keycode та модифікаторів події.


String as_text_location() const 🔗

Повертає представлення події у форматі String location. Це буде порожній рядок, якщо подія не пов’язана з певним місцем розташування.


String as_text_physical_keycode() const 🔗

Повертає рядкове представлення String для physical_keycode та модифікаторів події.


Key get_key_label_with_modifiers() const 🔗

Повертає локалізований ярлик, що поєднує в собі ключі модифікатора, такі як Shift або Alt. Дивись також InputEventWithModifiers.

Для отримання людсько-прочитаного представлення InputEventKey з модифікаторами, використання OS.get_keycode_string(event.get_key_label_with_modifiers(), де event є InputEventKey.


Key get_keycode_with_modifiers() const 🔗

Повертає латинський код у поєднанні з модифікаторами, такими як Shift або Alt. Дивись також InputEventWithModifiers.

Для отримання людсько-прочитаного представлення InputEventKey з модифікаторами, використання OS.get_keycode_string(event.get_keycode_with_modifiers(), де event є InputEventKey.


Key get_physical_keycode_with_modifiers() const 🔗

Повертає фізичний код, що поєднує в собі ключі модифікатора, такі як Shift або Alt. Дивись також InputEventWithModifiers.

Для отримання людсько-прочитаного представлення InputEventKey з модифікаторами, використання OS.get_keycode_string(event.get_phys_keycode_with_modifiers(), де event є InputEventKey.