Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Shortcut

繼承: Resource < RefCounted < Object

用於綁定輸入的快捷鍵。

說明

Shortcuts (also known as hotkeys) are containers of InputEvent resources. They are commonly used to interact with a Control element from an InputEvent.

One shortcut can contain multiple InputEvent resources, making it possible to trigger one action with multiple different inputs.

Example: Capture the Ctrl + S shortcut using a Shortcut resource:

extends Node

var save_shortcut = Shortcut.new()
func _ready():
    var key_event = InputEventKey.new()
    key_event.keycode = KEY_S
    key_event.ctrl_pressed = true
    key_event.command_or_control_autoremap = true # Swaps Ctrl for Command on Mac.
    save_shortcut.events = [key_event]

func _input(event):
    if save_shortcut.matches_event(event) and event.is_pressed() and not event.is_echo():
        print("Save shortcut pressed!")
        get_viewport().set_input_as_handled()

屬性

Array

events

[]

方法

String

get_as_text() const

bool

has_valid_event() const

bool

matches_event(event: InputEvent) const


屬性說明

Array events = [] 🔗

  • void set_events(value: Array)

  • Array get_events()

快捷鍵的 InputEvent 陣列。

通常使用的 InputEventInputEventKey,儘管也可以是任何 InputEvent,包括 InputEventAction


方法說明

String get_as_text() const 🔗

返回該快捷鍵的第一個有效 InputEventString 形式。


bool has_valid_event() const 🔗

返回 events 是否包含有效的 InputEvent


bool matches_event(event: InputEvent) const 🔗

Returns whether any InputEvent in events equals event. This uses InputEvent.is_match() to compare events.