求高手解决一下FLASH的一个影片剪辑拖拽问题!

var mc_x:Number=this.mc._x;
var mb_x:Number=this.mb_mc._x;

onEnterFrame=function()
{
onMouseDown=function(){
startDrag("mc", false,-320,0,0,0);
}
}

onMouseUp=function()
{
stopDrag();

jlx=Math.abs(mc._x-mb_x);
trace(jlx);
if(jlx<150)
{ onEnterFrame=function(){
mc._x+=(-300-mc._x)/5;
if(Math.abs(-300-mc._x)<1){
delete this.onEnterFrame;
mc._x=-300;
}}}

else if(jlx>150)
{onEnterFrame=function(){
mc._x+=(0-mc._x)/5;
if(Math.abs(0-mc._x)<1){
delete this.onEnterFrame;
mc._x=0;
}}}

}
上面是我网上弄的并修改的代码,包括一个600*300的名字为mc的影片剪辑,一个在空的mb_mc的影片剪辑。
拖拽的时候,第一次没问题,但是多次拖拽的话发现会有抖动的现象,求原因?
还有,我想实现类似于手机的效果:左边的MC01可以向右滑动到MC02,然后MC01与MC02也可单独上下拖动,求代码,谢谢谢谢!

第1个回答  2012-06-04
onMouseDown和onMouseUp不用写在onEnterFrame里面。我现在用手机回答不方便,晚上用电脑再详细告诉你。追问

哦,关于拖拽,我好像想明白了:抖动是因为在MC缓动未结束的时候,拖拽才会抖动。
现在是这样的,有一个影片剪辑MC,我在它左右两边分别放了MC01与MC02,MC可以左右拖动,拖动到左边的时候显示MC01,右边的时候显示MC02,我想让MC01与MC02还可以单独上下进行拖拽,请问这个可以实现吗?或者说应该如何实现呢?谢谢帮忙!!

追答

这个可以实现的。有几个地方你没有说清楚。第一,原来的MC是位于舞台中间的吗,这个MC的尺寸多大?舞台尺寸多大?拖动MC向左或向右移动到什么位置才出现mc01或mc02?
第二,拖动mc一定距离、mc01滑动到舞台中间,mc01显示层次的问题以及这时的mc如何处理?松开鼠标停止拖拽后如何处理mc?
第三,出现mc01或mc02以后,怎样收回去?就是什么情况下mc01、mc02返回?界面显示初始状态?
你好好想想,把具体的功能理清楚了,再动手写脚本。
这个周末有空的话,可以给你做个实例。

本回答被提问者采纳
第2个回答  2012-06-03
不知道追问

代码您懂不懂呀!这玩意,挺烦的哦。

用flashcc2015制作了一个动画,在下方时间轴拖动时动画不
当您在使用Flash CC 2015制作动画时遇到在下方时间轴拖动时动画不响应的问题,可能是由于您使用了影片剪辑元件而非图形元件所导致。影片剪辑元件与图形元件存在显著差异,其关键区别在于播放控制。影片剪辑元件的播放不受主时间轴的控制,这意味着动画播放的起始与结束不受主时间轴的影响,您可以在动画中设置...

在flash中编辑好的元件拖动到场景变失效,这是为什么呢?该如何解决这一...
1,看看你的蝴蝶飞的影片剪辑元件属性是不是“图形”还是“影片剪辑”,如果是“图形”的话,当主场景的时间轴停止不前时,图形元件也停止了,不会循环播放的。只有属性为“影片剪辑”的元件且里面没有stop()命令,它就会一直循环播放的...2.遮罩图层在锁定状态下是看不见遮罩层本身的,即遮罩生效...

在flash中编辑好的元件拖动到场景变失效,这是为什么呢?该如何解决这一...
1、蝴蝶不飞,可能是你在场景中的实例的类型不正确,要想让你的实例能动,必须是影片剪辑,不能是图形。这样实例才会有自己的时间轴,才能动。要是图形的话,那它的时间轴和主场景的时间轴是一致的,所以不动。2、遮罩图层的元件,拉入场景中变不可视,可能是因为图层被锁定(就是图层上面的那个按钮...

flash 制作中,如何点击按钮,然后弹出影片剪辑 并可以拖动影片剪辑
1,制作一个按钮,链接设置点击后跳转到影片剪辑所在的帧。(这样不需要编写导入影片剪辑的脚本)2,点击影片剪辑,为影片剪辑对象设置可以拖动的AS脚本。(on (press) { this.startDrag(true);\/\/当鼠标按下(press)之后,这个实例可以被拖拽,使用 命令如上面的命令解释。如果想选不锁定到鼠标位置中央...

如何实现flash中影片剪辑只在垂直的鼓动范围内可以实现拖拽,水平坐标...
就用startDrag方法就可以了,不过需要一些参数。大概示范一下。先说轴,做一个轴, 注册点放在轴中间的顶部(这个很重要)。然后做环,环的注册点要放在环的正中间。然后给轴起个名字Axis_mc,然后给环起名字:Annulus_mc。接下来写一下代码:AS2.0:Annulus_mc.onPress = function(){ Annulus_mc...

在flash中做好的影片剪辑拖到场景里不显示,只有一个圆圈和点,是怎么回...
此影片剪辑的第一帧是空白关键帧,就会出现这样的现象。

flash如何让一个影片剪辑移动到另一个影片剪辑跳到另一帧?(求flash大师...
你可以采取碰撞测试法和距离测试法,1.碰撞测试法 onClipEvent (enterFrame) 里加 if (this.hitTest(_root.a)) {this.gotoAndPlay(2)}\/\/如果a碰撞b,b到第2帧;2.距离测试法 比如:他们的长都是20,中心距离就是40 onClipEvent (enterFrame) 里加 if (Math.abs(this._x-_root.a._x)<...

flash创建的影片剪辑拖到场景中为什么动不了
\/\/这个是让影片剪辑强制播放 还有~记得把影片剪辑拖到场景里的时候,拖到哪一祯,记得在*场景的*那一祯加个动作 stop();\/\/这个是让场景停下来,但是影片剪辑继续播放(如果你确认你的场景祯数够多也可以不加)不然你场景不够长的话,影片剪辑没放完整个FLASH就重新播放了 PS:标*的地方别看错了 2L~...

在flash中编辑好的元件拖动到场景变失效,这是为什么呢?该如何解决这一...
影片剪辑的元件要测试影片时才会动。遮照图层你编辑是就按掉那个 X 进行编辑。如图

...让flash里,拖拽触发事件的影片剪辑回到原位??通过一个恢复按钮!!
在此帧开头写stop()并在前面加上一空白关键帧。。复位按钮指向空白关键帧。。。通过刷新帧的方法就可以实现上述效果。。

相似回答
大家正在搜