flash AS3 影片剪辑用 startdrag()拖动,为什么拖动好几次才有效?

这是我的代码:

mc.addEventListener(MouseEvent.MOUSE_DOWN,StartDrag)
var rectangle:Rectangle=new Rectangle(480,280,300,100);
function StartDrag(event:MouseEvent){
mc.startDrag(false,rectangle);
}//托动mc
求大神们帮助!

第1个回答  2013-12-02
代码没什么问题,只能猜测一下问题的原因了。你的mc只能在坐标为(480,280)宽是300,高是100的矩形内移动,这个矩形就像一个隐形的边框把mc围在了里面,你是没办法把mc拖出这个矩形边界的,建议你可以在舞台画这样一个矩形,看看是不是边界设置上出了问题。如果mc已经在矩形的边界,你又想把mc往外面拖动,就不会有作用了。
第2个回答  2013-12-01
哈罗。 请问你指的有效是不是拖到某个位置呢? 那样的话加个代码
mc.addEventListener(MouseEvent.MOUSE_UP,StopDrag)

function StopDrag(event:MouseEvent){
mc.StopDrag();
}//停止托动mc追问

我有这段代码的。我是那个影片剪辑要拖动好几次才能拖动,每次次数还不一样,能拖起来的位置也不一样。。。。

第3个回答  2013-12-01
mc.addEventListener(MouseEvent.MOUSE_DOWN,Start)
mc.addEventListener(MouseEvent.MOUSE_UP,stopp)
var rectangle:Rectangle=new Rectangle(480,280,300,100);
function Start(event:MouseEvent){
            mc.startDrag();
}//托动mc 
function stopp(event:MouseEvent){
            mc.stopDrag()
}//托动mc

as3 startDrag时如何让物件后的物件鼠标事件生效
你好。看你的意思是要拖动A然后如果拖到B上就让A与B重合,那么你的B侦听器就没必要用了啊,在哪里都可以读取到B的坐标的,不一定要在他的侦听器里。这种形式,帮你写了一个代码:import flash.display.Sprite;import flash.events.MouseEvent;var s1:Sprite=new Sprite();s1.graphics.beginFill(0x...

求flash中stardrag 语句的用法
使 target 影片剪辑在影片播放过程中可拖动。一次只能拖动一个影片剪辑。执行 startDrag() 操作后,影片剪辑将保持可拖动状态,直到用 stopDrag() 显式停止拖动为止,或直到对其它影片剪辑调用了 startDrag() 动作为止。可用性:ActionScript 1.0、Flash Player 4 参数 target:Object ― 要拖动的影片剪...

一个有关as3.0中startDrag()和stopDrag()的问题
应该是你注册点设置的位置在图形外面了 这样startDrag()后 鼠标就跑到图形外面 当你stopDrag的时候 图形接收不到鼠标释放的动作 所以没有起作用.建议解决方案是 侦听器不要加在mc上 直接加到时间轴上 即 this.addEventListener

Flash AS3如何在拖动对象的时候,限制他的拖动方向,既限定,水平拖动,或者...
在flash as3.0里面 有startDrag 函数 mc.startDrag(false, new Rectangle(0, 0, 100, 0) );这样mc这个元件只能在x轴方向拖动 拖动范围是 0-100 mc.startDrag(false, new Rectangle(10, 20, 100, 200) );这样mc是可以在x方向10-100 y轴方向20-200 这样一个矩形区域拖动 希望对你有帮助 ...

影片剪辑 拖动的问题
startDrag()后面四个参数可以限定范围 比如影片剪辑mc的注册点在左上角的话,就写 mc.startDrag(false,-4200,-4400,0,0);或者 startDrag(mc,false,-4200,-4400,0,0);就可以了 === 不明白你说的右下角往左上角走会出去 那4个参数和那个MC注册点的位置有关的,看看是不是这个问题 ...

AS3 影片剪辑拖动的问题
这个mc的实例名称.startDrag();

as3如何拖动屏幕
MovieClip(root).startDrag();

flash拖动代码startDrag,怎么计算后面的左,顶,右,底的数值啊?
startDrag("_root.mc", true, 0, 0, 550, 400);} onClipEvent (mouseUp) { stopDrag();} 这是在AS2里我写的实例,你可以借用一下 第一句意思是一个触发事件,当达到这个条件之后也就是鼠标按下,他开始拖动 然后是一个表达式,当他为真的时候,则拖动第一个后面的0、0、550、400就是...

flash脚本语言影片剪辑控制
要删除特定影片剪辑,可以使用removeMovieClip方法,如:removeMovieClip("target")。影片剪辑可以通过鼠标拖动进行操作,通过startDrag函数指定拖动目标和边界,如:on (press) { startDrag("\/happy", true, 0, 350, 210); }。拖动操作会持续到stopDrag()被执行或切换到其他影片剪辑的startDrag。通过...

Animate\/Flash如何制作拖拽填空题(AS3)
接着,制作四个与矩形大小相同的答案选项,同样转换为影片剪辑,实例名分别为mc0、mc1、mc2和mc3,便于后续操作。在时间轴上,关键帧上添加如下AS3代码,以便实现拖拽功能:actionscript import fl.events.*;var mc:MovieClip;addEventListener(MouseEvent.MOUSE_DOWN, startDrag);addEventListener(MouseEvent....

相似回答