flash中,如何实现图片拖拽效果,那个图片是一个动态的图片,求高人解答~

作者&投稿:符盲 (若有异议请与网页底部的电邮联系)
我想用flash实现一种效果,就是拖拽一个图片到一个特定位置,如果正确则自动吸附到上面,若不对则自动弹回~

这个~~~~你是想做拼图。对吗?您研究一下这个函数hittest()。这个嵌套if()else()就可以的了。如果说为什么第二个不是你设想的位置,那么我有个猜测,第一,在嵌套if()else()的时候,你不是指定坐标的!如果坐标是指定的,那么应该不会出现这种情况。当然也不排除还有其他问题

//假设你的图片在flash中的是一个实例名称为"mc"的影片剪辑,则应在Flash中添加AS3.0代码如下:import flash.events.MouseEvent;//载入需要使用的类,Flash 自动添加语句import flash.geom.Point;/载入需要使用的类,Flash 自动添加语句var _x:Number = new Number(0);//需定义范围的左上角坐标X值var _y:Number = new Number(0);//需定义范围的左上角坐标Y值var _width:Number = new Number(800);//需定义范围的宽度(向右)var _height:Number = new Number(600);//需定义范围的高度(向下)var rct:Rectangle = new Rectangle(_x,_y,_width,_height);//定义一个矩形,包含了你需要允许的拖动范围var mouse:Point=new Point();//定义一个点,用于记录每次鼠标按下时鼠标相对于图片的位置mc.mouseEnabled = false;//使MC不接受鼠标事件(穿透)stage.addEventListener(MouseEvent.MOUSE_UP,_onMouseUp);//侦听鼠标弹起动作stage.addEventListener(MouseEvent.MOUSE_DOWN,_onMouseDown);//侦听鼠标按下动作function _onMouseDown(event:MouseEvent=null):void//定义鼠标按下动作的事件处理函数{mouse=new Point(event.stageX,event.stageY);//记录鼠标的当前位置stage.addEventListener(MouseEvent.MOUSE_MOVE,_onMouseMove);//侦听鼠标移动动作}function _onMouseUp(event:MouseEvent=null):void//定义鼠标弹起动作的事件处理函数{stage.removeEventListener(MouseEvent.MOUSE_MOVE,_onMouseMove);//取消侦听鼠标移动动作}function _onMouseMove(event:MouseEvent=null):void//定义鼠标弹起动作的事件处理函数{mc.x=event.stageX-mouse.x;//使得mc以鼠标按下时的位置为基点而移动mc.y=event.stageY-mouse.y;//使得mc以鼠标按下时的位置为基点而移动if(mc.x>rct.left){mc.x=rct.left;mouse.x=event.stageX;}if(mc.x+mc.widthrct.top){mc.y=rct.top;mouse.y=event.stageY;}if(mc.y+mc.height<rct.bottom){mc.y=rct.bottom-mc.height;mouse.y=event.stageY-mc.height;}//如果图片超出允许范围,则将图片超出的方向重置为允许的最大值}

很简单的,先把动画放到一个MC(影片剪辑)里面,然后把这个MC放到住场景上面,选中它,按f9打开动作面板,在面板里加上以下代码:
onClipEvent (load) {
startDrag(this, true);
}
即可

怎么做一个MC:
按ctrl+f8,进入编辑界面,然后在这个MC里面做自己的动画,做完了把他从库中拖到场景里即可

在场景中画一个圆,点右键-转换为元件-影片剪辑,然后打开属性面板,设置实例名称为mc1,最后设置这一帧的帧动作为:
mc1.onEnterFrame = function() {
this._x += 5;
this._xscale += 5;
this._yscale += 5;
if (this._x>Stage.width) {
this._x = 0;
}
if (this._xscale>200) {
this._xscale = 100;
this._yscale = 100;
}
this.onPress = function() {
delete mc1.onEnterFrame;
startDrag(this);
};
this.onRelease = function() {
stopDrag();
mc1.onEnterFrame = function() {
this._x += 5;
this._xscale += 5;
this._yscale += 5;
if (this._x>Stage.width) {
this._x = 0;
}
if (this._xscale>200) {
this._xscale = 100;
this._yscale = 100;
}
};
};
};


科比广告《只要心够决》广告词中文+英文。谢
从挫折中学习 learn how to win 学习胜利 if you really want it 只要心够决 everything to your fire 将所有燃烧成激情 all the pain 所有痛苦 failures 失败 criticisms 批评 glory 荣耀 take the ball 出手夺球 take the lash 出手绝杀 you can do anything you want to 你可以做到任何事 if...

鞭笞是什么意思
古刑罚名。引:晋葛洪《抱朴子·用刑》:“昔周用肉刑,积祀七百, 汉氏废之,年代不如。至於改以鞭笞,大多死者外有轻刑之名,内有杀人之实也。”宋张耒《喜雪走笔呈李宣城》诗之二:“聒聒庭中争曲直,纷纷笔下判鞭笞。”拷打用的鞭子、竹板等物。引唐元稹《夏阳县令陆翰妻河南元氏墓志铭》...

鞭笞的造句鞭笞的造句是什么
鞭笞的造句有:使臣们均看到彼此眼中的震惊,他们万万没有想到,初露锋芒,鞭笞天下的大秦君侯,才露狰狞,便夭折了。眼前站着府台,正在用恶恨的言语审问着他,他被绑在一个木架上,受着牢兵的鞭笞,他身上早已被打的不成了人形,鲜血吱吱的流着。鞭笞的造句有:体刑是为轻狂人而设,鞭笞是为愚人...

巴南区15076856499: 怎样在FLASH中制作图片的拖动效果? -
李屠非言: on (release) { //当鼠标释放时执行以下动作 move(); //调用move()函数 } function move() { //定义move()函数 map_mc.onMouseDown = function () { //当鼠标左键按下时 startDrag(map_mc); //开始拖动地图map_mc } map_mc.onMouseUp = function () { //当鼠标左键释放时 stopDrag(); //停止拖动地图map_mc } } //结束move()函数的定义

巴南区15076856499: Flash中如何实现随意拖放图片位置?
李屠非言: 如果添加图片到舞台,则要全选图片,然后拖动.如果是添加到库,可以随意拖动,然后从库添加到舞台.如果添加的是矢量图,则要进行打散处理.图片也可以用元件的方式添加,然后拖动到舞台就可以编辑.包括移动,自由变换等等.

巴南区15076856499: FLASH中,如何让图片在指定范围内拖动 -
李屠非言: 你这张图片转为影片剪辑后的注册点在哪里?左上还是正中心?左上角的话 var rec:Rectangle = new Rectangle(-800,-600,800,600); 图片.startDrag(false,rec) 中心的话 var rec:Rectangle = new Rectangle(0,0,800,600); 图片.startDrag(false,rec)

巴南区15076856499: 请教:flash拖动效果的制作 -
李屠非言: 就是个2个拼成一个图,然后自动放到右边缩小.是随便拖动图就能合成1个么?还是固定好的,别的是拖不过去的啊?明白了,我看看怎么跟你说合适啊.先说下场景上的影片剪辑 图片的命名 pic1 pic2 pic3 pic4 ......图片拖拽到的区域(不好给...

巴南区15076856499: 如何实现在flash8中拖动图片的动作? -
李屠非言: 创建一个元件,【链接】为actionscript导出,标识符为'mc' . 在主场景第一帧输入如下代码;attachMovie("mc", "mc", _root.getNextHighestDepth(), {_x:100, _y:100}); _root.createEmptyMovieClip("elastic", _root.getNextHighestDepth()); mc.onPress = function() {startDrag(this); }; mc.onRelease = function() {stopDrag(); }; 好了

巴南区15076856499: 求FLASH用滚轮缩放图片.可拖动移动图片.... -
李屠非言: 假设将图片做成影片剪辑mcPic来示例:var MouseListener:Object = new Object(); MouseListener.onMouseWheel = function(d:Number, mc:MovieClip) { //乘以三时每次放大效果明显,也可以改变为其他数值; mc._xscale -= d*3; mc._yscale -= d*3;...

巴南区15076856499: FLASH点击图片拖动 -
李屠非言: mc.onRelease = function() { stopDrag(); };

巴南区15076856499: 我想用flash实现一种效果,就是拖拽一个图片到一个特定位置,如果正确则自动吸附到上面,若不对则自动弹回 -
李屠非言: 在那个位置放一个影片剪辑中B,如果你拖动的影片剪辑A和这个影片剪辑B发生碰撞,在松开鼠标时则A跳到那个B上,如果没有碰撞则A回到原位置.

巴南区15076856499: FLASH拖拽按钮到指定区域 -
李屠非言: 1、在FLASH文档中,把要拖动的图片都做成按钮,再把每一个图片做的按钮放到每一个影片剪辑中(有几个图片按钮就有几个影片剪辑)做成影片剪辑. 2、把要拖动图片的目标位置做成影片剪辑,这个目标位置的图片要做得十分地小,可以...

巴南区15076856499: 请问flash中,鼠标任意拖动两个图片的代码是什么呢,有谁能告知下,谢谢! -
李屠非言: 最简单的方法,是在这两个影片剪辑的帧上加如下代码,用的代码是as3版本的.this.addEventListener(MouseEvent.MOUSE_DOWN,StartDragEvent);0(MouseEvent.MOUSE_UP,StopDragEvent); function StartDragEvent(e:MouseEvent):void { this.startDrag(); } function StopDragEvent(e:MouseEvent):void { this.stopDrag(); }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网