作者sysuen (SY SUEN)
看板Flash
标题[问题] 滑鼠拖曳 as 3.0
时间Thu Apr 28 17:26:56 2011
如果有一个拉拔,必须再限定的范围内拖曳,
使用者难免会把滑鼠移开那个拖曳纽才放开,
所以在AS2.0的时候,放开滑鼠会用
xbt.onRelease = xbt.onReleaseOutside = function()
{ stopDrag();
}
换到AS3.0的时候,改用MouseEvent.MOUSE_UP,
理论上,似乎是不论在任何地方放开滑鼠,就要停止拖曳,所以程式码如下。
var boundsRect:Rectangle = new Rectangle(bar.x, bar.y, bar.width, 0);
xbt.addEventListener(MouseEvent.MOUSE_DOWN,xbtOnMouseDown);
addEventListener(MouseEvent.MOUSE_UP, xbtOnMouseUp);
function xbtOnMouseDown(evt:MouseEvent):void {
xbt.startDrag(true,boundsRect);
}
function xbtOnMouseUp(evt:MouseEvent):void {
xbt.stopDrag();
}
但是这样写,似乎没办法取代onReleaseOutside功能,
常常放开滑鼠还是没有执行stopDrag();
请问有什麽方法可以解决吗??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.220.146.75
1F:推 etrexetrex:stage.addEventListener(MouseEvent.MOUSE_UP, ...); 04/28 17:34