as3的鼠标事件有
CLICK :相当于在元件上的一个按下和一个弹起鼠标主键,即一个MOUSE_DOWN和一个MOUSE_UP
DOUBLE_CLICK :先触发一次CLICK, 为抵消click动作的影响,必须在doubleclick中逆click行动一次先。举个例子,譬如单击暂停或者播放,双击全屏,那么在双击动作中,首先逆单击动作即先播放或者暂停,然后再全屏,即可。
MOUSE_DOWN :在元件上按下鼠标主键
MOUSE_MOVE :在元件上鼠标主键
MOUSE_OUT :鼠标主键移出元件
MOUSE_OVER :鼠标主键移入元件
MOUSE_UP :在元件上弹起鼠标主键
MOUSE_WHEEL :在元件上滚轮
ROLL_OUT 以及 ROLL_OVER,这两个与前面的mouseover和mouseout很混淆,据说是mouseOver是一个冒泡事件,而rollOver并不冒泡。有待进一步考证。
如果要实现一个slider即滑杆:
滑杆的功能是:按下滑头,移动鼠标,滑头随着鼠标移动(沿滑轨x移动),弹起鼠标,滑头停止移动。
即:
1.按下滑头(鼠标必须在滑头上按下)
2.移动鼠标(鼠标在任意位置)
3.弹起鼠标(鼠标在任意位置)
我觉得有两种思路:
1.检测滑头的mouse_down,一旦检测到,立即startdrag,并侦听滑头的mousemove事件以及mouseup。在mousemove中将滑头的y不变,而只变x。在mouseup中stopdrag。
这个思路是想靠startdrag将鼠标绑定在滑头上,这样就可以侦听到滑头的mousemove和mouseup事件。
通过实验,发现形不通,因为drag时鼠标总是会移出滑头,而且在mousemove中的将y不变总是瞬间被drag出去,形似无效。
2.检测滑头的mousedown,一旦检测到,侦听stage的mousemove和mouseup,在mousemove中设定滑头的x位置。在mouseup中,removestage的这两个事件。
这个思路是通过只要按下了滑头,不管你是不是在滑头上移动或者释放鼠标都能起到作用。经测试,运行很好。
as学习笔记(十四)--鼠标事件及滑杆slider的实现
发表于2008年4月16日 20:35:00 更新于2008年4月16日 20:37:00
评论
暂无评论添加评论
分类
琐碎文字 As3&Flex RIA UG English CodingArt C++ PHP Webserver E音乐盒 Unity3d C# JS&Html5 Tools mobile golang 最近发表
- golang学习之函数/方法/接口(2022年1月6日 17:50:24)
- golang学习之零值(2022年1月6日 16:38:10)
- hello, 2018(2018年1月15日 22:47:25)
- 字体类型名词解释(2015年1月18日 11:29:14)
- 获取mysql表注释以及列注释(2014年11月13日 15:56:32)
- php连接ms sql数据库的一些问题(2014年9月15日 20:32:14)
- virtualbox虚拟网络:NAT&bridge桥接网络(2014年8月25日 22:51:35)
- php图片加水印(2014年8月15日 22:50:42)
- windows查看端口占用情况(2014年7月31日 21:19:30)
- android安卓activity生命周期(2014年7月12日 10:31:47)
最近回复