http://www.yaotaiyang.com/latestnews/qubie-MOUSE-a-OVERROLL-a-OVERMOUSE-a-OUTROLL-a-OUT/
殿堂之路上面对这两个事件的说明很详细,我也引用一下书上面的话:
这两个事件都是侦听鼠标指针当前是否在现实对象上方的。所不同的是MouseEvent.ROLL_OVER和MouseEvent.ROLL_OUT事件的bubbles属性为FALSE,意味着这两个事件不参与事件流冒泡。这会带来什么不同呢?举例说明,一个容器有子对象A和B,制定该容器侦听MouseEvent.ROLL_OVER事件,target是A,当鼠标移开一些,离开了子对象A处于子对象B上方时,虽然这时还在容器内,但立刻会发出一个MouseEvent.MOUSE_OUT事件,target是A,随后又会发出一个MouseEvent.MOUSE_OVER事件,target是B,这和我们的想法可能不同,我们原来希望只要鼠标指针还在容器上方,就不应该发出MouseEvent.MOUSE_OUT事件。
这时,如果不希望在子对象上移动而导致容器不停发出事件,那么可以使用MouseEvent.ROLL_OVER和MouseEvent.ROLL_OUT。ActionScript3设计这对事件本身就是为了简化我们的代码编写,不必勉强自己再去使用MouseEvent.MOUSE_OUT和MouseEvent.MOUSE_OVER。
如flash所示,当你把鼠标放到第一个按钮上来的时候,会出现几个按钮,开始的按钮和后来出现的按钮都属于btn_mc,btn_mc包含一段按钮出现的动画,其中在第一帧和最后一帧都加了stop();看主场景第一帧的代码:
this.btn_mc.addEventListener(MouseEvent.ROLL_OVER,go);
this.btn_mc.addEventListener(MouseEvent.ROLL_OUT,back);
function go(evt:MouseEvent):void{
evt.target.gotoAndPlay(2);
}
function back(evt:MouseEvent):void{
evt.target.gotoAndStop(1);
}
以上代码就能实现上述flash的效果,如果把上面的MouseEvent.ROLL_OVER换成MouseEvent.MOUSE_OVER,会发生什么事呢?那么当你鼠标离开最开始的按钮的时候,会产生一个MouseEvent.MOUSE_OUT事件,然后鼠标到下面按钮的时候,又会产生MouseEvent.MOUSE_OVER事件,此时,会报错。“在flash.display.SimpleButton上找不到属性gotoAndPlay,且没有默认值。很显然,此时go函数中的evt.target就变成了小按钮了。如果是MouseEvent.ROLL_OVER的话,go函数中的evt.target还是指的容器。用ROLL_OVER、ROLL_OUT来制作精美的flash二级导航菜单还是挺不错的。实现起来也比较简单
分享到:
相关推荐
介绍mouse_event的用法,简单的例子介绍
此demo是用mouse_event来模拟鼠标,分别用相对坐标和绝对坐标做了测试,是一个不错的例子。
globe_mc.addEventListener(MouseEvent.MOUSE_OVER,mouse_in); function mouse_in(me:MouseEvent){ globe_mc.play(); } //鼠标指针移出,地球仪影片片段停止播放 globe_mc.addEventListener(MouseEvent.MOUSE_OUT...
在linuc平台下摄像头抓图的程序,支持多种不同型号的摄像头驱动
一個檢視HID mouse的源碼 , 用來獲取Button 與 X/Y event的一個範例
mouse arduino zip file
spcaview用来取图片会有问题。这是经过修改的一个程序,可以用来取摄像头的一帧图像。Linux下使用,请把下载的包后缀改成.tar
该程序实现了怎样捕捉鼠标和键盘消息,包括鼠标的单击、双击、移动、键盘的按下、抬起,并在视窗显示相应信息。
使用ch375和stc 51写的usb鼠标的代码
WM_MOUSE_FUCK_LEAVE
mouse_Comix Black.rar 鼠标指针 、mouse_Comix Black.rar 鼠标主题、 mouse_Comix Black.rar 鼠标
fanuc dmp mouse driver
canvas的鼠标互动以及图形绘制,三角形,线段,圆形
nrf51822 蓝牙鼠标 多媒体键实例,测试可用
使用CYPRESS68013A USB控制器实现HID Mouse.
基于CycloneIII FPGA开发的PS2鼠标和VGA接口逻辑,采用Verilog编写。
基于fpga和xinlinx ise的鼠标应用vhdl程序,希望对你有所帮助!
Mouse hole trick
CSR Bluelab HID Mouse sample code
usb mouse c语言源代码,使用CRYPRESS芯片!