跳转至

GFTouchButton

API Reference / Standard / 类索引

  • 路径:addons/gf/standard/input/touch/gf_touch_button.gd
  • 模块:Standard
  • 继承:Node2D
  • API:public
  • 类别:运行时服务 (runtime_service)
  • 首次版本:3.17.0

通用触屏虚拟按钮节点。 可直接发送按下/释放信号,也可映射到 Godot InputMap 动作或虚拟手柄按钮事件。

成员概览

类型 名称 签名
信号 button_pressed signal button_pressed
信号 button_released signal button_released
属性 radius var radius: float = 48.0:
属性 color var color: Color = Color(1.0, 1.0, 1.0, 0.3):
属性 pressed_color var pressed_color: Color = Color(1.0, 1.0, 1.0, 0.65):
属性 accept_mouse_input var accept_mouse_input: bool = false
属性 action_name var action_name: StringName = &""
属性 emit_joypad_button var emit_joypad_button: bool = false
属性 joypad_device_id var joypad_device_id: int = -2
属性 joy_button var joy_button: JoyButton = JOY_BUTTON_A
方法 is_pressed func is_pressed() -> bool:
方法 release func release() -> void:

信号

button_pressed

  • API:public
signal button_pressed

按钮按下时发出。

button_released

  • API:public
signal button_released

按钮释放时发出。

属性

radius

  • API:public
var radius: float = 48.0:

按钮半径。

color

  • API:public
var color: Color = Color(1.0, 1.0, 1.0, 0.3):

按钮常态颜色。

pressed_color

  • API:public
var pressed_color: Color = Color(1.0, 1.0, 1.0, 0.65):

按钮按下颜色。

accept_mouse_input

  • API:public
var accept_mouse_input: bool = false

是否允许鼠标左键模拟触屏。默认关闭,避免触屏控件在桌面端隐式接管鼠标输入。

action_name

  • API:public
var action_name: StringName = &""

映射到 Godot InputMap 的动作名。为空则不映射。

emit_joypad_button

  • API:public
var emit_joypad_button: bool = false

是否额外发送虚拟手柄按钮事件。

joypad_device_id

  • API:public
var joypad_device_id: int = -2

虚拟手柄设备 ID。建议使用负数以避开真实手柄。

joy_button

  • API:public
var joy_button: JoyButton = JOY_BUTTON_A

对应的手柄按钮。

方法

is_pressed

  • API:public
func is_pressed() -> bool:

检查按钮是否处于按下状态。

返回:是否按下。

release

  • API:public
func release() -> void:

手动释放按钮。