微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何扩展 Godot 的 Button 以区分左键单击和右键单击事件?

如何解决如何扩展 Godot 的 Button 以区分左键单击和右键单击事件?

我使用内置的 Button 类创建了一个按钮,并将按钮掩码设置为 BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT。现在,左键和右键单击都会导致发出“按下”信号,但我需要一种方法来判断用户是用鼠标左键还是右键单击。

解决方法

扩展 Button 类,并在左键单击或右键单击按钮时创建和发出自定义信号。

class_name EventButton
extends Button

signal left_click
signal right_click

func _ready():
# warning-ignore:return_value_discarded
    connect("gui_input",self,"_on_Button_gui_input")

func _on_Button_gui_input(event):
    if event is InputEventMouseButton and event.pressed:
        match event.button_index:
            BUTTON_LEFT:
                emit_signal("left_click")
            BUTTON_RIGHT:
                emit_signal("right_click")

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。