鼠标的移动事件。高手们进来帮帮小弟!
stage.addEventListener(MouseEvent.MOUSE_MOVE,moves);
function moves(e:Event)
{
trace(" 鼠标坐标X:"+mouseX);
}
谁都知道这是一个当鼠标移动的时候输出鼠标的X坐标,但是可不可以,鼠标移动的时候不输出,当鼠标移动后停下来的时候输出一次当前鼠标的坐标。
例如:
鼠标,从A点到B点,两点之间的距离是(100),用上面的发用上面的方法就会输出一百次。
能不能当鼠标从A点移动到B点的时候,只输出两个坐标。
谢谢高手帮忙!
[解决办法]
楼主不要到处都发啊。这个不难,给你写了一个,用帧的监听写的,也可以用timer。
import flash.events.Event;import flash.events.MouseEvent;var temp:Object = new Object();var boo:Boolean = false;stage.addEventListener(MouseEvent.MOUSE_MOVE,moveEvt);function moveEvt(e){ if (!hasEventListener(Event.ENTER_FRAME)) { trace(stage.mouseX,stage.mouseY) boo = true addEventListener(Event.ENTER_FRAME,entEvt); }}function entEvt(e){ if (temp.x == stage.mouseX && temp.y == stage.mouseY && boo) { trace(temp.x,temp.y); removeEventListener(Event.ENTER_FRAME,entEvt); boo = false; } temp.x = stage.mouseX; temp.y = stage.mouseY;}