Flash CS3 和AS3中提供了双击事件Double_Click.用起来是很方便的.特别是在Flash CS3 IDE中操作就更简单了。下面是一个类的简单测试.
package { import flash.display.Sprite; import flash.events.MouseEvent; public class TestDoubleClick extends Sprite {
public function TestDoubleClick() { var btn:Sprite = new Sprite(); btn.x = 50 ; btn.y = 50 ; //btn的按钮状态 btn.buttonMode = true ; //鼠标是否可用。 //bt.mouseEnabled = false ; //双击开关 btn.doubleClickEnabled = true ;
btn.graphics.lineStyle(2, 0xFFFFFF, 100); btn.graphics.beginFill(0xFF0000, 100); btn.graphics.drawRoundRect(0, 0, 60, 60, 4, 4); btn.graphics.endFill();
btn.addEventListener(MouseEvent.DOUBLE_CLICK, onDoubleClick); btn.addEventListener(MouseEvent.CLICK, onClick);
addChild(btn);
} public function onDoubleClick(e:MouseEvent):void { trace(e); }
public function onClick(e:MouseEvent):void{ trace("click"); }
} }
|
将类另存为TestDoubleClick.as即可在新建的Flash
CS3的文档类填入即可.并测试.对于使用双击,有两个关键的地方,一个是需要先确保doubleClickEnabled是打开状态如:btn.doubleClickEnabled = true ;
还有一点就是鼠标的可用性.如//bt.mouseEnabled = false ; 当然这一行我已经注掉了,默认状态下是true.如果设为false.按钮将失效,当然双击也无法使用了。最后还有一处是buttonMode如:btn.buttonMode = true ;如设为false,只是去掉了手形,双击仍是可用的。