flash as3控制影片剪辑移动和缩放
1、 打开flash cs6,新建一个as3文档,具体方法如图所示。
2、 按Ctrl+F8键,新建一个影片剪辑,随便起一个名字,这里起名为“图片剪辑”,然后点击确定,进入影片剪辑编辑状态。
3、 按快捷键ctrl+R从外部导入一张图片到影片剪辑中,打开对齐面板,使图片的注册点居中对齐。
4、 退出影片剪辑编辑状态,按ctrl+L快捷键,从库中选择做好的影片剪辑,将起拖放到场景中合适位置,并给影片剪辑起实例名为mc
5、 在影片剪辑所在图层上新建一层,起名为按钮层,然后从菜单栏-窗口菜单中选择公用按钮库,从中选择如图所示按钮拖入场景中。
6、 加入的按钮再复制三个,调整起角度,得到上下左右四个方向按钮,并将按钮放到合适位置,并给上下左右四个按钮依次起实例名为up_btn,down_btn,left_btn,right_btn。
7、之后以同样的方法再加入两个按钮,并进行简单修改,使之成为放大和缩小两个按钮,并分别起实例名为d_btn,x_btn。最后的界面如图所示:
8、 这一步是关键部分,通过加入代码,使图片影片剪辑可以被四个方向按钮和放大缩小按钮控制。首先在按钮层上新建一层,起名为代码层,然后选择代码层第一帧,按F9快捷键,输入控制代码,具体代码如图:
9、 代码输入完毕,按ctrl+Enter测试成功,如果要改变移动速度只需要改变speed变量的值即可,如果要改变放大缩小的速度,只需要改变scale的值即可。
所有代码如下:
import flash.events.MouseEvent;
import flash.events.Event;
var speed:Number=5;
var a:int=0;
var b:int=0;
var scale:Number=0.05;
var sd:int=0;
addEventListener(MouseEvent.MOUSE_DOWN,onDown);
addEventListener(MouseEvent.MOUSE_UP,onUp);
function onDown(e:MouseEvent):void{
switch (e.target.name){
case "up_btn":
a=-1;
b=0;
break;
case "down_btn":
a=1;
b=0;
break;
case "left_btn":
b=-1;
a=0;
break;
case "right_btn":
b=1;
a=0;
break;
case "d_btn":
sd=1;
a=0;
b=0;
break;
case "x_btn":
sd=-1;
a=0;
b=0;
break;
default:
break;
}
addEventListener(Event.ENTER_FRAME,onEnter);
}
function onUp(e:MouseEvent):void{
removeEventListener(Event.ENTER_FRAME,onEnter);
}
function onEnter(e:Event):void{
mc.x+=speed*b;
mc.y+=speed*a;
mc.scaleX=mc.scaleY+=scale*sd;
}