lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4538|回复: 3
打印 上一主题 下一主题

按钮显示手形问题

[复制链接]

5

主题

0

好友

41

积分

士兵

Rank: 1

跳转到指定楼层
楼主
发表于 2016-7-27 10:56:53 |只看该作者 |倒序浏览
老大好,想让按钮显示手形

做的过程,遇到如果加上LMouseEventContainer.set(LMouseEvent.MOUSE_MOVE,false) 这句后有手形
但MOUSE_OUT事件就不起作用了
如果不加上LMouseEventContainer.set(LMouseEvent.MOUSE_MOVE,false) 不显示手形,怎么解决


代码:

    LMouseEventContainer.set(LMouseEvent.MOUSE_MOVE,false);
        var s1=new LSprite();
        s1.graphics.drawRect(0,"#000000",[0,0,400,400],true,"#ff0000");
        var btn=new LButton(s1,s1);
        addChild(btn);
        btn.useCursor = "pointer";
        btn.addEventListener(LMouseEvent.MOUSE_OVER,overListener);
        btn.addEventListener(LMouseEvent.MOUSE_OUT,outListener);
       
        function overListener(){
          console.log("over");       
        }

      //不输出:"out"
        function outListener(){
          console.log("out");       
        }

回复

使用道具 举报

37

主题

8

好友

9326

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

沙发
发表于 2016-7-27 11:11:47 |只看该作者
给游戏加个底面,MOUSE_OUT就可以触发了
比如
  1. var back=new LSprite();
  2. back.graphics.drawRect(0,"#000000",[0,0,LGlobal.width,LGlobal.height]);//一个透明矩形
  3. addChild(back);
复制代码
不回答与技术和引擎不相关的问题
回复

使用道具 举报

5

主题

0

好友

41

积分

士兵

Rank: 1

板凳
发表于 2016-7-27 13:07:38 |只看该作者
加了MOUSE_OUT还是不行,哪里错了吗
  
   LMouseEventContainer.set(LMouseEvent.MOUSE_MOVE,false);
        //
    var back=new LSprite();
    back.graphics.drawRect(0,"#000000",[0,0,LGlobal.width,LGlobal.height]);//一个透明矩形
    addChild(back);
        //
        var s1=new LSprite();
        s1.graphics.drawRect(0,"#000000",[0,0,400,400],true,"#ff0000");
    var btn=new LButton(s1,s1);
        addChild(btn);
        btn.useCursor = "pointer";
        btn.addEventListener(LMouseEvent.MOUSE_OVER,overListener);
        btn.addEventListener(LMouseEvent.MOUSE_OUT,outListener);

        function overListener(){
          console.log("over");       
        }
        function outListener(){
          console.log("out");       
        }
          console.log("out");       
        }
回复

使用道具 举报

37

主题

8

好友

9326

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

地板
发表于 2016-7-27 15:37:19 |只看该作者
sswy 发表于 2016-7-27 13:07
加了MOUSE_OUT还是不行,哪里错了吗
  
   LMouseEventContainer.set(LMouseEvent.MOUSE_MOVE,false);

不好意思,确实是bug
下个版本我修正一下
现在要用的话,需要重写一下LButton.prototype.ll_mouseout才行
  1.         LButton.prototype.ll_mouseout = function (e, type, cd, ox, oy) {
  2.                         var s = this;
  3.                         if (!s.ll_mousein) {
  4.                                 return;
  5.                         }
  6.                         e.clickTarget=s;
  7.                         s.ll_modeOut(e);
  8.                         s.callParent("ll_mouseout",arguments);
  9.                         s.ll_mousein = false;
  10.                 };
复制代码
demo测试
http://lufylegend.com/demo/test/137.html
不回答与技术和引擎不相关的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-5-31 04:21 , Processed in 0.044295 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部