UGUI监听判断鼠标点击按钮方式(左键,中键,右键)
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
public class ButtonleftOrMiddleAndRight : MonoBehaviour, IPointerClickHandler
{
public UnityEvent leftClick;
public UnityEvent middleClick;
public UnityEvent rightClick;
private void Start()
{
leftClick.AddListener(new UnityAction(ButtonLeftClick));
rightClick.AddListener(new UnityAction(ButtonRightClick));
middleClick.AddListener(new UnityAction(ButtonMiddleClick));
}
public void OnPointerClick(PointerEventData eventData)
{
if (eventData.button == PointerEventData.InputButton.Left)
leftClick.Invoke();
else if (eventData.button == PointerEventData.InputButton.Right)
rightClick.Invoke();
else if (eventData.button == PointerEventData.InputButton.Middle)
middleClick.Invoke();
}
private void ButtonLeftClick()
{
Debug.LogError("Left Click");
}
private void ButtonRightClick()
{
Debug.LogError("Right Click");
}
private void ButtonMiddleClick()
{
Debug.LogError("Middle Click");
}
}