项目中碰到一个组件需要拖拽,又需要单击事件,本来想改成双击事件的,因为需求,所以必须得用单击事件。
具体解决办法如下:
因为click是 MOUSE_DOWN和MOUSE_UP的过程,而拖拽也得必须是MOUSE_DOWN再去操作,所以,我想了一个办法解决
按下和松开之间如果差200毫秒(这是我瞎定的)之内就执行点击事件;
具体解决办法如下:
因为click是 MOUSE_DOWN和MOUSE_UP的过程,而拖拽也得必须是MOUSE_DOWN再去操作,所以,我想了一个办法解决
private var DownTime:int = 0;
private var UpTime:int = 0;
private function onMouseDown(e:MouseEvent):void {
DownTime=new Date().time;//鼠标按下去的时间
_player.getStage().addEventListener(Event.ENTER_FRAME,frame);
xx=_player.getSkin().viewSwapComp.mouseX;
yy=_player.getSkin().viewSwapComp.mouseY;
}
private function onMouseUp(e:MouseEvent):void {
UpTime=new Date().time;//鼠标松开的时间
if(UpTime-DownTime<200){
swapVideoSwfHander(e);//在这里处理点击事件
}
_player.getStage().removeEventListener(Event.ENTER_FRAME,frame);
}
按下和松开之间如果差200毫秒(这是我瞎定的)之内就执行点击事件;