必威体育Betway必威体育官网
当前位置:首页 > IT技术

EventTrigger和鼠标事件接口

时间:2019-10-31 18:14:26来源:IT技术作者:seo实验室小编阅读:88次「手机版」
 

triggerevent

EventTrigger将鼠标事件进行了一层封装,只要重写EventTrigger里面的对应的虚函数,就能实现鼠标对应的方法。

~

public class UIeventTrigger : EventTrigger
{

    public override void OnPointerEnter(PointerEventData eventData)//鼠标进入
    {
        base.OnPointerEnter(eventData);
        print("进入了");
    }
    public override void OnPointerExit(PointerEventData eventData)//鼠标移出
    {
        base.OnPointerExit(eventData);
        print("出来了");
    }
    vector3 pos1;//开始的位置
    Vector3 pos2;//结束的位置
    float distance;//鼠标滑动的距离
    public override void OnBeginDrag(PointerEventData eventData)//开始拖拽
    {
        base.OnBeginDrag(eventData);
        print("开始拖拽时间:"+Time.time);
        pos1 = Input.mousePosition;
    }
    public  bool isdrage;
    public override void OnDrag(PointerEventData eventData)//鼠标拖拽
    {
        base.OnDrag(eventData);
        print("拖得动吗");
        isdrage = true;
        print("拖。。。"+Time.time);
    }
    public override void OnEndDrag(PointerEventData eventData)//鼠标结束拖拽
    {
        base.OnEndDrag(eventData);
        pos2 = Input.mousePosition;
        distance = Vector3.Distance(pos1,pos2);
        Vector3 op = pos2 - pos1;
        print("在x方向拖动距离:"+(pos2.x-pos1.x));
        print("在y方向的距离:" + (pos2.y - pos1.y));
        print("鼠标拖拽的距离1:"+distance);
        print("鼠标拖拽的距离2:" + op.magnitude);
        print("结束拖拽时间:"+Time.time);
    }

    public override void OnPointerUp(PointerEventData eventData)//鼠标抬起
    {
        base.OnPointerUp(eventData);
        isdrage = false;
    }
    public override void OnDrop(PointerEventData eventData)//?还不清楚有什么用处
    {
        base.OnDrop(eventData);     
    }
    public override void OnInitializePotentialDrag(PointerEventData eventData)//拖拽前的初始化
    {
        base.OnInitializePotentialDrag(eventData);
        print("初始化~~~拖拽" + Time.time);
    }
    public override void OnPointerClick(PointerEventData eventData)//鼠标点击
    {
        base.OnPointerClick(eventData);
    }

    public override void Onscroll(PointerEventData eventData)//鼠标滚轮
    {
        base.OnScroll(eventData);
        print("滚了么");
    }

    // Use this for initialization
    void Start () {

    }


    // Update is called once per frame
    void Update ()
    {
        if (isdrage==true)
        {
            this.transform.position = Input.mousePosition;        
        }
    }

}

文章最后发布于: 2018-01-05 11:03:34

相关阅读

13.事件——JavaScript高级程序设计(笔记)

00.JavaScript与HTML之间的交互是通过事实实现的。事件,就是文档或浏览器窗口中发生一些特定的交互瞬间。可以使用处理程序来预

淘宝客丢单事件彻底解决对策思考

最近几日,对于淘宝和马云来说,真是多事之秋!先是“淘宝商城中小卖家为反对淘宝新规围攻大卖家”,然后是“支付宝帐户

“灰犀牛”事件,视频网站自制内容无法逾越的屏障

数据被各个视频网站平台分割,但没有哪个视频网站掌握的数据量足以导致强大的生产力。内容行业需要数据颗粒无限自动细分,并且跟人的

京东副总裁朋友圈:正面回应"盛传今晚有大消息"事件

A5创业网(公众号:iadmin5)4月5日讯,据悉昨日有网友爆料称,今晚有大消息,疑似指章泽天将会在晚间发布离婚声明的官宣消息,为此京东副总

每日话题:六六投诉京东事件回顾 京东态度为何大转变?

A5 创业网(www.admin5.com)3月19日消息,近日作家六六炮轰京东售假之事闹闹的沸沸扬扬,事件的最终结果以京东道歉六六接受道歉而握手

分享到:

栏目导航

推荐阅读

热门阅读