flash as3.0 常用代码
flashAS3.0代码
flashAS 3.0 代码(2011-08-09 00:25:34)转载标签:新漫动画代码asf lash杂谈基本Act ion。
包括:- Go to跳转到指定的帧- P lay播放- S top停止- T oggle High Qual ity在高画质和低画质间切换- St op Al l Sou nds停止所有声音的播放- GetURL跳转至某个超联结-FSCom mand发送FSC omman d命令- Load Movi e装载影片- U nload Movi e卸载影片- T ell T arget告知目标- If Fram e IsLoade d..判断帧是否被完全载入- OnMouse Even t鼠标事件<。
其他Act ions。
包括:- b reak跳出循环-call调用指定帧(一般喊有某个特定函数)- co mment注释- c ontin ue继续循环- de lete删除一个对象(Obj ect)中的变量- d o whi le do whil e循环- d uplic ateMo vieCl ip复制MC- el se否则(与if联用)- el se if否则如果(与if联用)- ev aluat e调用自定义函数(Funct ion)-forf or循环-for .. in依次取得对象(Obj ect)中的各个属性或者某个数组中的所有元素- F SComm and发送FSCo mmand命令- fu nctio n声明自定义函数-getUR L跳转至某个超联结- got o跳转到指定的帧-if如果- ifFr ameLo aded..帧是否完全被载入- incl ude读入外部的A ction Scrip t程序文件(.as)- load Movie装载MC- load Varia bles转载外部文件中的数据,这些外部文件可以是文本文件,或者是由A SP/CG I等脚本返回的文本值- on鼠标事件的触发条件- o nClip Event MC的事件触发程序- play播放- p rint输出到打印机- rem oveMo vieCl ip删除MC- re turn在函数(f uncti on)中返回一个值-set v ariab le设定变量值- s etPro perty设定属性- star tDrag开始拖动- stop停止- s topAl lSoun ds停止所有声音的播放- st opDra g停止拖动- swa pDept hs交换两个MC的深度- te llTar get指定Acti on命令生效的目标-toggl eHigh Quali ty在高画质和低画质间切换-trace跟踪调试- unlo adMov ie卸载MC- va r声明局部变量- w hile当..成立时..- w ith对..对象(Objec t)做..<。
FLASH动画常用as3命令
Loading制作
下载正在进行事件的事件处理函数显示下载 的数据
var loader:Loader =new Loader(); var url:URLRequest =new URLRequest("084.swf"); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,showProgress); function showProgress(e:ProgressEvent){ trace(e.bytesLoaded/e.bytesTotal); } loader.contentLoaderInfo.addEventListener(PLETE,completeHandler); function completeHandler(e:Event){ loader.x=50; loader.y=80; addChild(loader); } loader.load(url);
Loading制作
下载完成事件的事件处理函数处理显示对象
var loader:Loader =new Loader(); var url:URLRequest =new URLRequest("084.swf"); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,showProgress); function showProgress(e:ProgressEvent){ trace(e.bytesLoaded/e.bytesTotal); } loader.contentLoaderInfo.addEventListener(PLETE,completeHandler); function completeHandler(e:Event){ loader.x=50; loader.y=80; addChild(loader); } loader.load(url);
flashas3.0时钟源代码
flashas3.0时钟源代码// 文件 1.DTimer.aspackage{import flash.display.Shape;import flash.display.Sprite;import flash.display.StageAlign;import flash.display.StageScaleMode; import flash.text.StaticText;import flash.events.*;import flash.text.T extField;import flash.text.T extFormat;public class DTimer extends Sprite{// 设置时钟宽度public var w:uint=200;// 设置时钟高度public var h:uint=200;// 设置时钟半径public var radius:uint;// 设置时钟中心位置public var centerX:int;public var centerY:int;// 定义三个形状表示时钟指针public var hourHand:Shape;public var minuteHand:Shape;public var secondHand:Shape;// 定义时钟样式public var bgColor:uint=0xeeeeff;public var hourHandColor:uint=0x003366;public var minuteHandColor:uint=0x000099; public var secondHandColor:uint=0xcc0033; public var x0:uint;public var y0:uint;public var x1:uint;public var y1:uint;public var txt:TextField;// 定义时间public var currentTime:Date;public function init():void{// 绘制表盘drawBorder();// 绘制表盘显示文字drawLabels();// 绘制指针createHands();Drawlss();// 显示文本CreateTxt();}public function DTimer(w:uint){this.w=w;this.h=w; // 是圆盘所以取一样this.radius=Math.round(this.w/2);this.centerX=this.radius;this.centerY=this.radius;}public function drawBorder(){graphics.lineStyle(0.5,0x999999);graphics.beginFill(bgColor);graphics.drawCircle(centerX,centerY,radius); graphics.endFill();}public function drawLabels(){for(var i:Number=1;i<=12;i++){var label:TextField=new TextField();label.text=i.toString();// 小时位置var angleInRadians:Number=i*30*(Math.PI/180);/* 度*π弧度==---------180弧度*180度==------------π即:π弧度等于180度*/label.x=centerX+(0.9*radius*Math.sin(angleInRadians))-5; label.y=centerY-(0.9*radius*Math.cos(angleInRadians))-9;trace(Math.sin(angleInRadians));// 格式化文本内容var tf:TextFormat=new TextFormat();tf.font="Arial";tf.bold="true";tf.size=12;label.setTextFormat(tf);addChild(label);}}// 绘制分钟对应位置public function Drawlss(){for(var i:Number=0;i<=60;i++){var lshape:Shape=new Shape();Drawls(lshape,i*6,0x000000,1);addChild(lshape);}}// 绘制分针方法public function Drawls(hand:Shape,rot:uint,color:uint,thickness:Number):void{ var angleInRadius:Number=rot*(Math.PI/180);x1=centerX+(radius*Math.sin(angleInRadius));y1=centerY-(radius*Math.cos(angleInRadius));if(rot%30==0){x0=centerX+(0.95*radius*Math.sin(angleInRadius));y0=centerY-(0.95*radius*Math.cos(angleInRadius));}else{x0=centerX+(0.97*radius*Math.sin(angleInRadius));y0=centerY-(0.97*radius*Math.cos(angleInRadius));}hand.graphics.lineStyle(thickness,color);hand.graphics.moveTo(x0,y0);hand.graphics.lineTo(x1,y1);}public function createHands():void{var hourHandShape:Shape=new Shape();drawHand(hourHandShape,Math.round(radius*0.5),hourHa ndColor,3.0);this.hourHand=Shape(addChild(hourHandShape));this.hourHand.x=centerX;this.hourHand.y=centerY;// 绘制分针var minuteHandShape:Shape=new Shape();drawHand(minuteHandShape,Math.round(radius*0.8),minut eHandColor,2.0);this.minuteHand=Shape(addChild(minuteHandShape));this.minuteHand.x=centerX;this.minuteHand.y=centerY;// 绘制秒针var secondHandShape:Shape=new Shape();drawHand(secondHandShape,Math.round(radius*0.9),secon dHandColor,0.5);this.secondHand=Shape(addChild(secondHandShape));this.secondHand.x=centerX;this.secondHand.y=centerY;}public function drawHand(hand:Shape,distance:uint,color:uint,thickness:Numbe r):void{hand.graphics.lineStyle(thickness,color);hand.graphics.moveTo(0,distance);hand.graphics.lineTo(0,0);}public function draw():void{currentTime=new Date();showTime(currentTime);showT(currentTime);}public function CreateTxt():void{txt=new TextField();txt.width=300;txt.x=centerX-radius;txt.y=centerY-radius-20;addChild(txt);}public function showT(time:Date){var seconds:uint=time.getSeconds();var minutes:uint=time.getMinutes();var hours:uint=time.getHours();var year:uint=time.getFullYear();var month:uint=time.getMonth()+1;var date:uint=time.getDate();this.txt.text="现在时间是"+year+"年"+month+"月"+date+"日"+hours+"时"+minutes+"分"+seconds+"秒";}public function showTime(time:Date):void{var seconds:uint=time.getSeconds();var minutes:uint=time.getMinutes();var hours:uint=time.getHours();this.secondHand.rotation=180+(seconds*6);this.minuteHand.rotation=180+(minutes*6);this.hourHand.rotation=180+(hours*30)+(minutes*0.5);}}}//文件2. SimpleClock.aspackage{import flash.display.Sprite;import DTimer;import flash.events.TimerEvent;import flash.utils.Timer;public class SimpleClock extends Sprite{public var face:DTimer;public var ticker:Timer;public static const millisecondsPerMinute:int=1000*60;public static const millisecondsPerHour:int=1000*60*60;public static const millisecondsPerDay:int=1000*60*60*24;public function initClock(faceSize:Number=200){var invoiceDate:Date=new Date();var millisecondsPerDay:int=1000*60*60*24;var dueDate:Date =new Date(invoiceDate.getTime()+(30*millisecondsPerDay));var oneHourFromNow:Date=new Date();oneHourFromNow.setTime(oneHourFromNow.getTime()+m illisecondsPerHour);// 创建表盘,初始化参数face=new DTimer(Math.max(20,faceSize));face.init();addChild(face);face.draw();// 创建Timer对象ticker=new Timer(1000);ticker.addEventListener(TimerEvent.TIMER,onTick);ticker.start();}public function onTick(event:TimerEvent){face.draw();}}}// 文件3.DateTimer.aspackage{import flash.display.Sprite;import DTimer;import SimpleClock;public class DateTimer extends Sprite{ public function DateTimer(){var sc:SimpleClock=new SimpleClock(); sc.x=165;sc.y=100;addChild(sc);sc.initClock();}}}。
学习as3.0常用语句
ActionScript是Flash的脚本语言,通过ActionScript才能在Flash中创作具有很强交互性的动画,而该语言的最新版本是ActionScript3.0。
学习基础知识:表达式、变量和函数等;有8个实例方法:play(); :让播放头开始或继续播放stop(); :停止播放gotoAndPlay(帧数或标签,场景); :从(转到)某帧开始播放。
gotoAndStop(帧数或标签,场景); :转到某帧并停止nextFrame(); :跳到下一帧,并停止prevFrame(); :跳到上一帧,并停止nextScene(); :跳到下一场景prevScene(); :跳到上一场影有实例属性6个:currentFrame: 记录当前播放的是第几帧currentLabel: 记录当前播放帧的标签totalFrames: 记录当前影片共有多少帧currentScene: 持有当前scene场景对象引用scenes: 一个数组,记录影片含有的全部场景对象数组currentLabels:记录着当前场景下所有FrameLabel标签对象的数组。
enabled: 默认为true.控制影片对象是否可以具有按钮行为。
常用属性语句在Flash CS中,利用属性语句可对影片剪辑的属性进行设置(如位置、大小、透明度等)。
1、侦听器在as3.0中,如要让特定的事件发生,执行预先设定的某个交互动作(如单击“播放”按钮时开始播放动画),就需要通过使用侦听器来实现。
若要确保程序响应特定的事件,必须先将侦听器添加到对应的事件目标中,或添加到作为事件对象事件流的一部分的任何显示列表对象中。
在Flash CS中,侦听器的基本结构如下:function eventResponse(eventobject:EventType):void{//要执行的脚本}eventTarget.addEventListener(EventType.EVENT_NAME,eventResponse);以上结构执行两个操作:首先定义一个函数,然后addEventListener()语句对源对象进行侦听,当特定指定的事件发生时,就执行先前定义的函数中的动作。
AS3常用代码
flash常用代码!(精)flash, 代码flash AS3的全屏代码:this.stage.displayState=StageDisplayState.FULL_SCREEN; 退出代码:tc_btn.addEventListener(MouseEvent.CLICK, tuichu);//给overbtn这个按钮添加鼠标点击执行tuichu函数的侦听function tuichu(event:MouseEvent):void {fscommand("quit");//鼠标点击执行tuichu时swf退出}时间轴上停止代码:this.stop()按钮代码:红色代码为自定义函数,同一按钮中相同,不同按钮必须不同以区别开来。
播放和停止bf_btn.addEventListener(MouseEvent.CLICK,work1);function work1(event:MouseEvent){this.play()}tz_btn.addEventListener(MouseEvent.CLICK,work2);function work2(event:MouseEvent){this.stop()}跳转代码shou_btn.addEventListener(MouseEvent.CLICK,work1);function work1(event:MouseEvent){gotoAndStop("首页");}tz_btn.addEventListener(MouseEvent.CLICK,work2);function work2(event:MouseEvent){gotoAndPlay(1);}逐帧代码:xy_btn.addEventListener(MouseEvent.CLICK,work1);function work1(event:MouseEvent){this.nextFrame()}Sy_btn.addEventListener(MouseEvent.CLICK,work2);function work2(event:MouseEvent){this.prevFrame()}按钮控制影片剪辑tz_btn.addEventListener(MouseEvent.CLICK,work1);function work1(event:MouseEvent){this.ai_mc.gotoAndPlay(3)}按钮暂停代码;(1)控制主场景暂停的方法是,在舞台上建立个播放暂停按钮,起名pause_btn。
Flash程序设计(AS3.0)课程常用的键值及常量
下面是常用的键值及常量:键-->keyCode0-->481-->492-->503-->514-->525-->536-->547-->558-->569-->57A-->65B-->66C-->67D-->68E-->69F-->70G-->71H-->72I-->73J-->74K-->75L-->76M-->77N-->78O-->79P-->80Q-->81R-->82S-->83T-->84U-->85V-->86W-->87X-->88Y-->89Z-->90小键盘的KeyCode键-->keyCode0-->961-->972-->983-->994-->1005-->1016-->1027-->1038-->1049-->105*-->106+-->107Enter-->108--->109.-->110/-->111F1~F15键盘KeyCode 键-->keyCodeF1-->112F2-->113F3-->114F4-->115F5-->116F6-->117F7-->118F8-->119F9-->120F10-->121F11-->122F12-->123F13-->124F14-->125F15-->126其他键的KeyCode键-->keyCode BackSpace-->8 Tab-->9Clear-->12Enter-->13Shift-->16Ctrl-->17Alt-->18 CapsLock-->20 Esc-->27Space-->32PageUp-->33PageDown-->34End-->35Home-->36←(左)-->37↑(上)-->38→(右)-->39↓(下)-->40Insert-->45Delete-->46Help-->47NumLock-->144: *-->186; +-->187- =-->189/ ?-->191@ `-->192[ {-->219\ |-->220] }-->221" '-->222KeyCode定数一览表键-->定数BackSpace-->Keyboard.BACKSPACE CapsLock-->Keyboard.CAPS_LOCK Control-->Keyboard.CONTROL Delete-->Keyboard.DELETEEnd-->Keyboard.ENDEnter-->Keyboard.ENTEREscape-->Keyboard.ESCAPEF1-->Keyboard.F1F2-->Keyboard.F2F3-->Keyboard.F3F4-->Keyboard.F4F5-->Keyboard.F5F6-->Keyboard.F6F7-->Keyboard.F7F8-->Keyboard.F8F9-->Keyboard.F9F10-->Keyboard.F10F11-->Keyboard.F11F12-->Keyboard.F12F13-->Keyboard.F13F14-->Keyboard.F14F15-->Keyboard.F15Home-->Keyboard.HOMEInsert-->Keyboard.INSERTNUMPAD 0-->Keyboard.NUMPAD_0 NUMPAD 1-->Keyboard.NUMPAD_1 NUMPAD 2-->Keyboard.NUMPAD_2 NUMPAD 3-->Keyboard.NUMPAD_3 NUMPAD 4-->Keyboard.NUMPAD_4 NUMPAD 5-->Keyboard.NUMPAD_5 NUMPAD 6-->Keyboard.NUMPAD_6 NUMPAD 7-->Keyboard.NUMPAD_7 NUMPAD 8-->Keyboard.NUMPAD_8 NUMPAD 9-->Keyboard.NUMPAD_9 NUMPAD +-->Keyboard.NUMPAD_ADD NUMPAD .-->Keyboard.NUMPAD_DECIMAL NUMPAD /-->Keyboard.NUMPAD_DIVIDE NUMPAD Enter-->Keyboard.NUMPAD_ENTER NUMPAD *-->Keyboard.NUMPAD_MULTIPLY NUMPAD --->Keyboard.NUMPAD_SUBTRACT Page Up-->Keyboard.PAGE_UPPage Down-->Keyboard.PAGE_DOWNArrow Up-->Keyboard.UPArrow Down-->Keyboard.DOWNArrow Left-->Keyboard.LEFTArrow Right-->Keyboard.RIGHTShift-->Keyboard.SHIFTSpace-->Keyboard.SPACETab-->Keyboard.TAB。
flash as3.0按钮代码
AS3.0代码单击按钮时播放到第五帧的Btn.addEventListener(MouseEvent.CLICK,onClick);functiononClick(Evt:MouseEvent){gotoAndStop(totalFrames);}复制代码FLASH CS3 AS3.0 按钮如何制作代码如何写stop();按钮.addEventListener(MouseEvent.MOUSE_DOWN,MouseDown);function MouseDown(event:MouseEvent):void{gotoAndStop(2);//执行按钮}_root.MC.按钮可以获得按钮;//as 2.0_root.MC.按钮=function() { //执行按钮}//as 3.0root.MC.按钮.addEventListener(MouseEvent.MouseDown,MouseDown);function MouseDown(event:MouseEvent):void { //执行按钮}案例2:熟悉addChild和removeChild在不同的swf之间的运用,以及loader的用法说明:点击picture会载入另一个swf,点击载入的swf上的一个按钮,该swf消失。
代码:swfA(也就是按钮所在的flash)varloader:Loader = new Loader();loader.load(new URLRequest("Popup.swf"));picture_btn.addEventListener(MouseEvent.CLICK, showPicture);function showPicture(event:MouseEvent):void{addChild(loader);}AS3里用loader代替了loadMovie,load的时候不能直接添加路径名,需要通过URLRequest来载入。
FLASH(实例 案例 教程) AS3.0代码简介
FLASH(实例案例教程) AS3.0代码简介22011-06-23 01:21MovieClip 的公共属性属性定义方accessibilityProperties : AccessibilityProperties此显示对象的当前辅助功能选项。
DisplayObjectalpha : Number指示指定对象的 Alpha 透明度值。
DisplayObjectblendMode : StringBlendMode 类中的一个值,用于指定要使用的混合模式。
DisplayObjectblendShader : Shader[只写] 设置用于混合前景和背景的着色器。
DisplayObjectbuttonMode : Boolean指定此 sprite 的按钮模式。
SpritecacheAsBitmap : Boolean如果设置为 true,则 Flash Player 将缓存显示对象的内部位图表示形式。
DisplayObject constructor : Object对类对象或给定对象实例的构造函数的引用。
ObjectcontextMenu : ContextMenu指定与此对象相关联的上下文菜单。
InteractiveObjectcurrentFrame : int[只读 (read-only)] 指定播放头在 MovieClip 实例的时间轴中所处的帧的编号。
MovieClipcurrentFrameLabel : String[只读 (read-only)] MovieClip 实例的时间轴中当前帧上的标签。
MovieClip currentLabel : String[只读 (read-only)] 在 MovieClip 实例的时间轴中播放头所在的当前标签。
MovieClip currentLabels : Array[只读 (read-only)] 返回由当前场景的 FrameLabel 对象组成的数组。
FLASH_as3.0常用代码
FLASH as3.0常用代码1.按钮事件(新版)步骤:实现第一帧暂停:右击第一帧,点动作,写代码stop();实现点按钮开始:放一个按钮(可以在窗口菜单->公用库->按钮里找一个)在第一帧的舞台上,属性面板里给按钮取名:实例名称bt1 ,右击第一帧,点动作,写代码:bt1.addEventListener(MouseEvent.CLICK ,f1);function f1(evt:MouseEvent){gotoAndPlay(2);}//////////////////////////补充:as2(老版)中的按钮事件实现第一帧暂停:右击第一帧,点动作,写代码stop();实现点按钮开始:放一个按钮(可以在窗口菜单->公用库->按钮里找一个)在第一帧的舞台上,右击按钮,点动作,写代码:on (release){ gotoAndPlay(2); }//////////////////////////2.按钮超链接linkButton.addEventListener(MouseEvent.CLICK, gotoAdobeSite);function gotoAdobeSite(event:MouseEvent):void{var adobeURL:URLRequest = new URLRequest("/");navigateToURL(adobeURL);}3.随机数Math.random ()输出时间var time1:Date=new Date(); t1.text=time1.toLocaleTimeString();4.画线1graphics.lineStyle(3,0xff0000,0.3);graphics.moveTo(300,100);graphics.lineTo(200,300);画线2graphics.lineStyle(1,0xff0000,1);for(var i:int=0;i<100;i++){graphics.lineTo(Math.random ()*600,Math.random ()*400);}5. 画三角形var m1:MovieClip = new(MovieClip); //声明一个新的mc类bt1,并用new来构造它m1.graphics.lineStyle(2, 0x990000, .75);//使用bt1的graphics属性设置线条粗细,颜色,透明度m1.graphics.beginFill(0x00FF00);//以下的代码是用graphics画三角形。
word文档flash as3.0控制代码
文本的创建:文本工具创建(建立静态、动态、输入文本)、代码创建
属性的进行访问及设置:
对使用文本工具创建的文本可以使用属性面板设置属性如:文本的命名,字体、大小等。
也可以使用代码对文本属性的进行访问及设置
文本处理涉及的类和包:TextFormat 、TextFormat 、filters
其中:
TextField用于文本的创建、属性的设置
TextFormat用于文本格式的创建
filters包用于文本滤镜的设置
例子:
新建一个文档,在文档的图层一的第一帧输入以下代码。
var myText:TextField = new TextField();
myText.text = "文本内容" ;
myText.width = 350 ;
myText.x = 80 ;
var format1:TextFormat = new TextFormat();
format1.color = 0xFF0000;
format1.font = "华文行楷";
format1.size = 40 ;
format1.bold = true ;
format1.italic =true ;
myText.setTextFormat(format1);
addChild(myText) ;。
FLASH-as3.0常用代码
FLASH as3.0常用代码1.按钮事件〔新版〕步骤:实现第一帧暂停:右击第一帧,点动作,写代码stop();实现点按钮开始:放一个按钮〔可以在窗口菜单->公用库->按钮里找一个〕在第一帧的舞台上,属性面板里给按钮取名:实例名称bt1 ,右击第一帧,点动作,写代码:bt1.addEventListener(MouseEvent.CLICK ,f1);function f1(evt:MouseEvent){gotoAndPlay(2);}//////////////////////////补充:as2(老版)中的按钮事件实现第一帧暂停:右击第一帧,点动作,写代码stop();实现点按钮开始:放一个按钮〔可以在窗口菜单->公用库->按钮里找一个〕在第一帧的舞台上,右击按钮,点动作,写代码:on (release){ gotoAndPlay(2); }//////////////////////////2.按钮超链接linkButton.addEventListener(MouseEvent.CLICK, gotoAdobeSite);function gotoAdobeSite(event:MouseEvent):void{var adobeURL:URLRequest = new URLRequest(":// baidu /");navigateToURL(adobeURL);}3.随机数Math.random ()输出时间var time1:Date=new Date(); t1.text=time1.toLocaleTimeString();4.画线1graphics.lineStyle(3,0xff0000,0.3);graphics.moveTo(300,100);graphics.lineTo(200,300);画线2graphics.lineStyle(1,0xff0000,1);for(var i:int=0;i<100;i++){graphics.lineTo(Math.random ()*600,Math.random ()*400);}5. 画三角形var m1:MovieClip = new(MovieClip); //声明一个新的mc类bt1,并用new来构造它m1.graphics.lineStyle(2, 0x990000, .75);//使用bt1的graphics属性设置线条粗细,颜色,透明度m1.graphics.beginFill(0x00FF00);//以下的代码是用graphics画三角形。
FLASH-as3.0常用代码
FLASH as3.0常用代码1.按钮事件(新版)步骤:实现第一帧暂停:右击第一帧,点动作,写代码stop();实现点按钮开始:放一个按钮(可以在窗口菜单->公用库->按钮里找一个)在第一帧的舞台上,属性面板里给按钮取名:实例名称bt1 ,右击第一帧,点动作,写代码:bt1.addEventListener(MouseEvent.CLICK ,f1); function f1(evt:MouseEvent){gotoAndPlay(2);}//////////////////////////补充:as2(老版)中的按钮事件实现第一帧暂停:右击第一帧,点动作,写代码stop();实现点按钮开始:放一个按钮(可以在窗口菜单->公用库->按钮里找一个)在第一帧的舞台上,右击按钮,点动作,写代码:on (release){ gotoAndPlay(2); }//////////////////////////2.按钮超链接linkButton.addEventListener(MouseEvent.CLICK, gotoAdobeSite);function gotoAdobeSite(event:MouseEvent):void {var adobeURL:URLRequest = new URLRequest("");navigateToURL(adobeURL);}3.随机数Math.random ()输出时间var time1:Date=new Date(); t1.text=time1.toLocaleTimeString(); 4.画线1graphics.lineStyle(3,0xff0000,0.3);graphics.moveTo(300,100);graphics.lineTo(200,300);画线2graphics.lineStyle(1,0xff0000,1);for(var i:int=0;i<100;i++){graphics.lineTo(Math.random()*600,Math.random ()*400);}5. 画三角形var m1:MovieClip = new(MovieClip); //声明一个新的mc类bt1,并用new来构造它m1.graphics.lineStyle(2, 0x990000, .75);//使用bt1的graphics属性设置线条粗细,颜色,透明度m1.graphics.beginFill(0x00FF00);//以下的代码是用graphics画三角形。
使用flash as3代码来画图
Flash中的绘图是通过Graphic s来实现的,Graphic s类是直接继承了Objec t 类,具有很多的绘图方法,大致分为 两类:
一是定义绘图样式的方法 二是用于绘制和清除图形的方法。 有关样式的方法包括线条的样式和填充样式两类。 有关绘图方法包括绘制和绘制开头两类。
转换:通过设置对象的 transform.matrix 属性,对其做相应的转换 Matrix.rotate() - 旋转的角度 Matrix.translate() - 平移的距离 Matrix.scale() - 缩放的比例 Matrix.b - 将矩阵垂直倾斜 Matrix.c - 将矩阵水平倾斜
使用with()函数来简化:
wit h(t his.graphic s) {
graphics.lineStyle(2, 0x990000, .75); graphic s.beginFill(0x00FF00);
graphic s.moveT o(100,200); graphic s.lineT o(200,100); graphic s.lineT o(0,100); graphic s.lineT o(100,200); }
Graphic s类的实例,而是先创建Shape类或Sprit e类的实例,此时的显示实例就具有Graphic s,而Graphic s属性是 Graphic s类的实例,通过
Graphic s属性就可以调用绘图的方法。
另外,由于MovieClip类继承了Sprite类,所以也可以在MovieClip类的实例中绘图。在实际应用中应该使用 Shape类来绘制图形,因为Shape类只有graphic s属性和构造方法,所以绘制图形的效率更高。只有需要图形的交 互功能时,再使用Sprite类和MovieClip类。
使用flash as3代码来画图
使用flash as3代码来画图使用代码来画图但是我们不推荐这样做太累了演示使用Flash ActionScript 3.0 画一些基本的图形,以及对绘制的图形或其他可视对象做一些基本的转换∙画图 - 通过 Shape 对象的 graphics 属性来执行矢量绘图命令o1、使用 lineStyle() 定义画图的线条样式o2、moveTo() - 设置当前绘画点;lineTo() - 以当前绘画点为起点,用当前定义的线条样式,画一条直线到目标点;curveTo() - 指定二次贝塞尔曲线的控制点和终点,从而完成曲线的绘制;drawRect() - 绘制矩形;drawCircle() - 绘制圆形;drawEllipse() - 绘制椭圆;o3、beginFill() 和 endFill() 用于填充他们之间所绘制的图形。
如果是渐变填充则对应的方法是 beginGradientFill 和 endFill()∙转换 - 通过设置对象的 transform.matrix 属性,对其做相应的转换o Matrix.rotate() - 旋转的角度o Matrix.translate() - 平移的距离o Matrix.scale() - 缩放的比例o Matrix.b - 将矩阵垂直倾斜o Matrix.c - 将矩阵水平倾斜1、画图在 UI 上放置 8 个 Button名称分别为:btnLine, btnCurve, btnRectangle, btnCircle, btnEllipse, btnLiner, b tnRadial, btnClea分别用于演示:画直线,画曲线,画矩形,画圆形,画椭圆,线性渐变填充,放射性渐变填充,清除图形Main.aspackage{import flash.display.MovieClip;import ponentEvent;import fl.events.SliderEvent;import flash.display.Shape;import flash.geom.Matrix;import flash.display.GradientType;import flash.display.SpreadMethod;public class Main extends MovieClip{var originalMatrix:Matrix;public function Main():void{btnLine.addEventListener(ComponentEvent.BUTTON_DOW N, drawLine);btnCurve.addEventListener(ComponentEvent.BUTTON_DOW N, drawCurve);btnRectangle.addEventListener(ComponentEvent.BUTTON_D OWN, drawRectangle);btnCircle.addEventListener(ComponentEvent.BUTTON_DOW N, drawCircle);btnEllipse.addEventListener(ComponentEvent.BUTTON_DOW N, drawEllipse);btnLiner.addEventListener(ComponentEvent.BUTTON_DOW N, drawLinerGradient);btnRadial.addEventListener(ComponentEvent.BUTTON_DOW N, drawRadialGradient);btnClear.addEventListener(ComponentEvent.BUTTON_DOW N, clearGraphics);}// 画直线function drawLine(e:ComponentEvent):void{// lineStyle() - 定义画图的线条样式// 第一个参数:线条粗细,整数(0 - 255)// 第二个参数:线条的颜色值(16进制)// 第三个参数:不透明度(0 - 1)canvas.graphics.lineStyle(12, 0x000000);// moveTo() - 设置当前绘画点。
flash as3.0有用代码
1. 场景跳转:● gotoAndPlay(scene,frame);● gotoAndStop(scene,frame);● nextFrame();● preFrame();● nextScene();● preScene();2. 简单数据类型:● Boolean:true或false,默认值是false;● Int :整型,默认值是0;● Null:仅包含一个值null;● Number:双精度浮点型,默认值是NaN;● String:字符序列,默认值是null;Uint:整型,默认值是0;3. 全屏代码:stage.displayStage="fullScreen";4. 指针代码:...(对象)buttonMode=true;5. 加载链接:...(对象)addEventListener(MouseEvent.CLICK,onPress_Handler); function onPress_Handler(e:MouseEvent):void {navigateToURL(newURLRequest("") );}6. 加载音乐:var sound:Sound=new Sound(new URLRequest("音频文件地址"));sound.play();7. 场景跨越:stop();mc.buttonMode=true;mc.addEventListener(MouseEvent.CLICK,b1); function b1(Event:MouseEvent) { gotoAndPlay(3,"场景1");}stop();8. 控制播放Stop();mc.addEventListener(MouseEvent.CLICK,bf) function bf(e:MouseEvent){Play();}9. 遮帘过渡:import fl.transitions.*;import fl.transitions.easing.*;TransitionManager.start(mc1,{type:Blinds,direcction ransition.IN,duration:2,easing:None.easeNone,numStripts: 10,dimension:0});注解:Type:过渡效果;direction:过渡方向(Transition.IN:由内向外、由上到下;Transition.OUT:与之相反)Duration:过渡时间长短;easing:缓动效果;numStripts:遮帘效果条纹数(建议1-50);dimension:遮帘条纹是垂直(0)还是水平的(1);TransitionManager.start():创建过渡的类的方法和属性。
Flash_as3.0实例教程100例
实例一利用缓动类实现图片滚动点击放大效果//缓动类不在flash包中在fl包中所以要先导入import fl.transitions.Tween;//导入缓动类import fl.transitions.TweenEvent;//导入缓动事件import fl.transitions.easing.Regular;//导入缓动效果中有规律的var arrTupian:Array=[];//存放图片的数组var tweenscaleX:Tween;//用来控制图片宽高的缓动类var tweenscaleY:Tween;var datu:MovieClip;for (var i:int=0; i<8; i++) {var xiaotu:MovieClip =new Pic();//这里Pic是库中一个存放图片的类文件addChild(xiaotu);xiaotu.gotoAndStop(i+1);xiaotu.width=120;xiaotu.height=100;xiaotu.x=xiaotu.width/2+i*(xiaotu.width+10);xiaotu.y=420;arrTupian.push(xiaotu);xiaotu.addEventListener(Event.ENTER_FRAME ,dongf);//为每个小球添加移动帧频函数}function dongf(e) {var mc:MovieClip=e.target;mc.x-=6;if (mc.x<0-(xiaotu.width/2+10)) {//如果该图片出了场景则放在最后一张图片的位置mc.x=xiaotu.width/2+7*(xiaotu.width+10);}mc.buttonMode=true;mc.addEventListener(MouseEvent.MOUSE_OVER ,overf);///鼠标移过时候停止移动mc.addEventListener(MouseEvent.MOUSE_OUT,outf);//}function overf(e) {for (i=0; i<arrTupian.length; i++) {//注意是点击一张图片应该让所有的图片都移除移动的侦听arrTupian[i].removeEventListener(Event.ENTER_FRAME ,dongf);arrTupian[i].removeEventListener(MouseEvent.MOUSE_OVER ,overf);//注意也要把移过函数移除,等下次再调用再添加防止下面的效果还没有达到又开始此函数}//此时大图出现datu=new Pic();datu.gotoAndStop(arrTupian.indexOf (e.target)+1);addChild(datu);datu.x=stage.stageWidth/2;datu.y=200;tweenscaleX=new Tween(datu,"scaleX",Regular.easeOut,1,3,0.5,true);//参数从1倍扩大到3倍tweenscaleY=new Tween(datu,"scaleY",Regular.easeOut,1,3,0.5,true);//参数分别是对象,属性,缓动类型,开始参数,结束参数,缓动事件,true表示为单位为妙false表示为帧}function outf(e) {e.target.removeEventListener(MouseEvent.MOUSE_OVER ,overf);e.target.removeEventListener(MouseEvent.MOUSE_OVER ,outf);tweenscaleX=new Tween(datu,"scaleX",Regular.easeOut,3,1,0.5,true);//开始和结束的参数反过来则实现了缩小的效果tweenscaleY=new Tween(datu,"scaleY",Regular.easeOut,3,1,0.5,true);//tweenScaleX=new Tween.yoyo ()或者用这个方法,表示实现原来缓动的相反过程//tweenScaleY=new Tween.yoyo ()tweenscaleX.addEventListener(TweenEvent.MOTION_FINISH,fishf);}function fishf(e) {removeChild(datu);datu=null;//注意从显示列表中清除后,//元件本身还有东西,因此还要把大图元件清空for (i=0; i<arrTupian.length; i++) {arrTupian[i].addEventListener(Event.ENTER_FRAME ,dongf);}实例二利用timer类实现图片的切换场景中有一个pic图片多帧元件,currnum和totalnum两个动态文本speed输入文本,一个msg动态文本var timer:Timer;speed.text="2"//播放的初始速度为1000毫秒btn.addEventListener(MouseEvent.CLICK ,f);function f(e) {msg.text=""timer=new Timer(1000*Number(speed.text),pic.totalFrames);//计时器运行的时间单位都是毫秒,因此输入的速度都是秒应该再乘以1000.//输入的文本都是字符串因此要转化成数字timer.start();timer.addEventListener(TimerEvent.TIMER ,timerf);timer.addEventListener (TimerEvent.TIMER_COMPLETE,comf)//添加一个播放完后的函数}function timerf(e) {pic.gotoAndStop(timer.currentCount);//图片播放的张数及为计时器运行的当前次数//例如运行一次既是第一张,两次则为第二张currnum.text=String(timer.currentCount);totalnum.text=String(timer.repeatCount);//计时器总共运行的次数}function comf(e){msg.text="图片已经播放完毕谢谢欣赏"//信息文本框的文本显示内容}var format:TextFormat=new TextFormat("Impact",15,0xff00ff,true);var txt:TextField=new TextField();addChildAt(txt,numChildren-1);txt.text="这里随便写些东西";txt.wordWrap=true;txt.setTextFormat(format);txt.width=txt.textWidth;txt.height=txt.textHeight;txt.x=10,txt.y=33;实例三点击小图看大图效果var targetArr:Array=[];var pointArr:Array=[];var picArr:Array=[];var index:int;var targetPoint=new Point(275,200);for (var i:int=0; i<20; i++) {var point:Point=new Point();var targetP:Point=new Point();//var C:Class=getDefinitionByName("cat"+i) as Class;/加载同路径文件夹中的名字为cat+i20张的图片var bmd:BitmapData=new C(0,0);//库中一个图片类文件var bmp:Bitmap=new Bitmap(bmd);var mc:MovieClip=new MovieClip();addChild(mc);mc.addChild(bmp);bmp.x=- bmp.width/2;bmp.y=- bmp.height/2;mc.scaleX=mc.scaleY=.4;i<6?(mc.x=2.5+mc.width/2+i*(mc.width+10),mc.y=mc.height/2):0;//上面六个图片的位置,坐标为图片的中心i>=6&&i<10?(mc.x=550-mc.width/2-2.5,mc.y=mc.height/2+mc.height+8+(i-6 )*(mc.height+8)):0;//右边四张图片的坐标i>=10&&i<16?(mc.x=550-mc.width/2-2.5-(i-10)*(mc.width+10),mc.y=400-mc. height/2):0;//下面六张图片坐标i>=16&&i<20?(mc.x=mc.width/2+2.5,mc.y=400-mc.height/2-mc.height-8-(i-16)*(mc.height+8)):0;//左边四张图片的坐标point.x=targetP.x=mc.x,point.y=targetP.y=mc.y;//记录此时每张图片的位置mc.mouseChildren=false;mc.n=i;//定义mc的私有属性记录每张图片的索引值picArr.push(mc);//targetArr.push(targetP);pointArr.push(point);}var timer:Timer=new Timer(1000);timer.start();timer.addEventListener(TimerEvent.TIMER,picMove);var k:int=0;function picMove(e) {//图片移动效果k++;for (var j:int=0; j<pointArr.length; j++) {targetArr[j].x=pointArr[(k+j)%pointArr.length].x;//当前点的坐标随着k的增加等于目标点坐标循环变换targetArr[j].y=pointArr[(k+j)%pointArr.length].y;if (picArr[j].x==275&&picArr[j].y==200) {//说明是中心位置的图片continue;} else {//说明是周围的图片picArr[j].x=pointArr[(k+j)%pointArr.length].x;//让每张图片的坐标循环变换picArr[j].y=pointArr[(k+j)%pointArr.length].y;}}}for (i=0; i<picArr.length; i++) {picArr[i].buttonMode=true;picArr[i].addEventListener(MouseEvent.CLICK,clickF);}function clickF(e) {setChildIndex(e.target,numChildren-2);//先把当前被点击的图片放在第二层objMove(e.target,targetPoint,1,1);if (picArr[index].x==275,picArr[index].y==200) {objMove(picArr[index],targetArr[index],.15,.15);}index=e.target.n;}functionobjMove(displayObject:DisplayObject,targetObj:Point,targetScalex:Number,tar getScaley:Number) {///**/参数分别是当前对象,当前点,x方向的缩放值,y方向上的缩放值timer.stop();//先让计时器停止,即点击图片动画过程中让图片移动的事件停止displayObject.addEventListener(Event.ENTER_FRAME,frame);function frame(e) {for (var i:int=0; i<picArr.length; i++) {picArr[i].mouseEnabled=false;picArr[i].buttonMode=false;picArr[i].removeEventListener(MouseEvent.CLICK,clickF);//点击每张图片后马上先移除点击事件}e.target.x+=(targetObj.x-e.target.x)/5;//缓动公式实现缓动效果e.target.y+=(targetObj.y-e.target.y)/5;e.target.scaleX+=(targetScalex-e.target.scaleX)/5;e.target.scaleY+=(targetScaley-e.target.scaleY)/5;vardis:Number=Math.sqrt((targetObj.x-e.target.x)*(targetObj.x-e.target.x)+(target Obj.y-e.target.y)*(targetObj.y-e.target.y));if (Math.abs(dis)<1) {//目标点和当前点的距离e.target.x=targetObj.x;e.target.y=targetObj.y;displayObject.removeEventListener(Event.ENTER_FRAME,frame);//图片达到目标点后移除该帧频事件trace("ok");for (i=0; i<picArr.length; i++) {//然后给每张图片再重新添加点击事件picArr[i].addEventListener(MouseEvent.CLICK,clickF);picArr[i].buttonMode=true;picArr[i].mouseEnabled=true;}timer.start();//计时器开始运行,即周围图片继续移动}}}var sp:Sprite=new Sprite();//画相框addChild(sp);sp.x=275;sp.y=200;sp.graphics.lineStyle(15,0xb66700);sp.graphics.drawRect(-174,-124,348,248);sp.graphics.lineStyle(2,0xa95401);sp.graphics.drawRoundRect(-177,-127,354,254,10,10);sp.graphics.lineStyle(3,0xa95401);sp.graphics.drawRoundRect(-173,-123,346,246,10,10);sp.graphics.lineStyle(1.5,0xa95401);sp.graphics.moveTo(-178,-128);sp.graphics.lineTo(-168,-118);sp.graphics.moveTo(178,-128);sp.graphics.lineTo(168,-118);sp.graphics.moveTo(178,128);sp.graphics.lineTo(168,118);sp.graphics.moveTo(-178,128);sp.graphics.lineTo(-168,118);sp.filters=[new BevelFilter(3,45,0xff9900,1,0x,1,5,5,1,3),new DropShadowFilter(4,45,0,1,5,5,.5,3)];//=======var format:TextFormat=new TextFormat("Impact",15,0xff00ff,true); var txt:TextField=new TextField();addChildAt(txt,numChildren-1);txt.text="这里随便写些东西";txt.wordWrap=true;txt.setTextFormat(format);txt.width=txt.textWidth;txt.height=txt.textHeight;txt.x=10,txt.y=33;实例四条形遮罩const W:Number=stage.stageWidth;const H:Number=stage.stageHeight;var picSpr:Sprite=addChild(new Sprite()) as Sprite;//用来装矩形条的容器var pic1:MovieClip = picSpr.addChild(new Pic()) as MovieClip;//实例化两个图集var pic2:MovieClip = picSpr.addChild(new Pic()) as MovieClip;var maskSpr:Sprite=picSpr.addChild(new Sprite()) as Sprite;pic2.gotoAndStop(3);//因为遮罩另一个图集所以先把另一个跳转到第二帧pic2.mask=maskSpr;//矩形条容器遮罩图集二//=====画矩形条函数function Rect(w:Number,h:Number):Sprite {var rect:Sprite = maskSpr.addChild(new Sprite()) as Sprite;rect.graphics.beginFill(0);rect.graphics.drawRect(0,0,w,h);rect.graphics.endFill();return rect;}var num:uint=80;//矩形条的总条数var rw:Number=W/num;//竖条的宽度var rh:Number=H/num;//横条的宽度var n:uint=0;//用来控制矩形的条数变化var bl:Boolean=true;//用来控制矩形条的偶数情况和奇数情况var a:uint=4*Math.random();//矩形条的从四种不同方向出现var timerA:Timer=new Timer(40,80);//控制每一个矩形条出现的时间,共执行八十次var timerB:Timer=new Timer(3000,1);//用来控制每一个效果完成后间隔的时间timerA.start();timerA.addEventListener(TimerEvent.TIMER,ttA);function ttA(evt:TimerEvent):void {var rectH:Sprite=Rect(rw,H);//实例化竖条var rectW:Sprite=Rect(W,rh);//实例化横条switch (a) {case 0 :if (bl==true) {//当为真时,出现奇数条第一种效果从左上角出现rectH.x=2*n*rw;//横坐标以竖条的宽度2倍增加即每隔一个宽度增加一个rectW.y=2*n*rh;//同上2*n==num-2?[n=0,bl=false]:0;//当n增加到最大值时,变为逆向出现偶竖条}else{rectH.x=W-(2*n-1)*rw;rectW.y=H-(2*n-1)*rh;}break;case 1 :if (bl==true) {//第二种效果从右下角出现rectH.x=W-(2*n+1)*rw;//rectW.y=H-(2*n+1)*rh;2*n==num-2?[n=0,bl=false]:0;} else {rectH.x=(2*n-1)*rw;rectW.y=(2*n-1)*rh;}break;case 2 :if (bl==true) {//第三种效果从左下角出现rectH.x=2*n*rw;rectW.y=H-(2*n+1)*rh;2*n==num-2?[n=0,bl=false]:0;} else {rectH.x=W-(2*n-1)*rw;rectW.y=2*(n-1)*rh;}break;default :if (bl==true) {//第四种效果从右上角出现rectH.x=W-(2*n+1)*rw;rectW.y=2*n*rh;2*n==num-2?[n=0,bl=false]:0;} else {rectH.x=2*(n-1)*rw;rectW.y=H-(2*n-1)*rh;}}n++;if (timerA.currentCount==timerA.repeatCount) {//如果当前执行次数等于总次数说明已经完成了实例化的80条矩形条for (var i:uint=maskSpr.numChildren; i>0; i--) {//就删除所有的矩形条maskSpr.removeChildAt(0);}pic1.currentFrame==pic1.totalFrames?pic1.gotoAndStop(1):pic1.nextFrame();//图片集播放到末尾循环从头开始pic2.currentFrame==pic2.totalFrames?pic2.gotoAndStop(1):pic2.nextFrame(); timerB.start();//添加第二个时间侦听器间隔时间为3秒}}timerB.addEventListener(TimerEvent.TIMER,ttB);function ttB(evt:TimerEvent):void {a=4*Math.random();n=0;bl=true;timerA.reset();timerA.start();}var sound:Sound=new Sound(newURLRequest("/yinle/%D4%C6%C9%CF%C7%E0%C9%BD. mp3"));var soundChannel:SoundChannel=new SoundChannel();var bool:Boolean=true;btn.addEventListener(MouseEvent.CLICK,ck);function ck(evt:MouseEvent):void {if (bool==true) {timerA.start();soundChannel=sound.play();btn.gotoAndStop(2);} else {for (var i:uint=maskSpr.numChildren; i>0; i--) {maskSpr.removeChildAt(0);}n=0;bl=true;a=4*Math.random();timerA.reset();timerA.stop();timerB.stop();soundChannel.stop();btn.gotoAndStop(1);}bool=! bool;}addChildAt(btn,numChildren-1);addChildAt(bt,numChildren-1)实例五3d旋转效果var num:Number=25;//照片的张数var quanshu:int=2;//螺旋的圈数var r:Number=300;//螺旋的半径var ang:Number =(Math.PI *2*quanshu)/num;//每张图片的角度,因为总共两圈所以总共的角度就360*2再除以总共张数var con:Sprite;//图片容器var arr:Array =new Array();//数组用来排序root.transform.perspectiveProjection.fieldOfView=60;//场景时间轴的视角设置为60root.transform.perspectiveProjection.projectionCenter=new Point(275,350); //主场景的消失点为舞台中心con=new Sprite();addChild(con);con.x=0;con.y=0;con.z=400;for (var i=0; i<num; i++) {var mc:MovieClip =new photo();con.addChild(mc);mc.x=r*Math.cos(i*ang);mc.z=r*Math.sin(i*ang);mc.rotationY=- i*ang*180/Math.PI+90;//通过旋转达到每张图片都面向y轴mc.y=i*30-100;//arr.push(mc);}addEventListener(Event.ENTER_FRAME ,f);function f(e) {con.rotationY+=2;for (var j=0; j<num; j++) {arr.push({mcc:con.getChildAt(j),Z:con.getChildAt(j).transform.getRelativeMatrix 3D(root).position.z});}for (var i:int; i<num; i++) {arr.sortOn("Z",18);//z坐标排序con.addChildAt(arr[i].mcc,i);}}实例六简单的点小图出大图效果for (var i:int=0; i<3; i++) {//把九张图片按照3×3格式排列for (var j:int=0; j<3; j++) {var mc:Mc=new Mc();//添加库中图片类文件mc.gotoAndStop(i+1+j*3);mc.width=mc.oldWidth=550/3;//设置宽为场景宽550三分之一mc.height=mc.oldHeight=400/3; //设置高为场景高400三分之一mc.flag=false;//定义一个mc的布尔值初始值为假即小图片时候addChild(mc);mc.x=mc.oldx=i*mc.width;//设置每张图片的坐标mc.y=mc.oldy=j*mc.height;mc.addEventListener(MouseEvent.MOUSE_DOWN ,f);}}//给每张图片添加点击事件function f(e) {var mc=e.target;setChildIndex(mc,numChildren-1);mc.flag=!mc.flag;//布尔值取反值为真说明此时已经点击过变成大图if (mc.flag) {//如果为真mc.removeEventListener(Event.ENTER_FRAME ,loop2);//移除缩小事件mc.addEventListener(Event.ENTER_FRAME ,loop1);//添加扩大事件} else {//如果为假mc.removeEventListener(Event.ENTER_FRAME ,loop1);//移除扩大mc.addEventListener(Event.ENTER_FRAME ,loop2);}}//添加缩小function loop1(e) {//var mc=e.target;mc.x+=(0-mc.x)/5;//因为每张图片的注册点在左上角,所以目缓动目标位置(0,0)即把每张图片的左上角顶点移向场景左上角mc.y+=(0-mc.y)/5;mc.width+=(550-mc.width)/5;//并且同时宽高扩大缓动过程mc.height+=(400-mc.height)/5;}function loop2(e) {//var mc=e.target;mc.x+=(mc.oldx-mc.x)/5;//回到原始位置,mc.y+=(mc.oldy-mc.y)/5;mc.width+=(mc.oldWidth-mc.width)/5;//同时缩小到原来的大小mc.height+=(mc.oldHeight-mc.height)/5;}实例七利用缓动类实现图片切换效果import fl.transitions.Tween;//导入tween类import fl.transitions.easing.*;//导入缓动类var arr:Array=[];function loaderpic(scale:Number ,i:int ,b:Boolean=false ):MovieClip {var mc:MovieClip =new MovieClip();var loader:Loader =new Loader();var url:URLRequest=new URLRequest("C:/Documents andSettings/Administrator/桌面/新建文件夹/sinian"+i+".jpg");loader.load(url);loader.contentLoaderInfo.addEventListener(PLETE ,loadf);function loadf(e) {var temp:Loader=e.target.loader as Loader;temp.filters=[new BevelFilter(6,45,0xffffff,1,0,1,5,5,1,1,"inner",false)];//添加的斜角滤镜temp.scaleX=temp.scaleY=scale;mc.addChild(temp);b?(temp.x=-temp.width /2,temp.y=-temp.height /2):0;loader.contentLoaderInfo.removeEventListener(PLETE ,loadf);}return mc;}//加载八张大图for (var i:int=0; i<8; i++) {var bigpic:MovieClip=loaderpic(1.2,i,true);addChildAt(bigpic,0);bigpic.x=325;bigpic.y=300;="bigpic"+i;}//加载八张小图for (i=0; i<8; i++) {var smallpic:MovieClip=loaderpic(0.4,i,true);smallpic.mouseChildren=false;//大图不接受鼠标事件addChildAt(smallpic,8);//因为大图已经占用七个图层,因此小图要从第八个图层添加smallpic.buttonMode=true;smallpic.x=60*i;smallpic.y=20;smallpic.scaleX=smallpic.scaleY=1-i*0.08;smallpic.n=i;="smallpic"+i;smallpic.startX=smallpic.x;arr.push(smallpic);smallpic.addEventListener(MouseEvent.MOUSE_OVER,overf);smallpic.addEventListener(MouseEvent.MOUSE_OUT,outf);}//鼠标滑过的函数function overf(e) {var temp:MovieClip=e.target as MovieClip;if (temp.n!=0) {newTween(temp,"x",None.easeNone,temp.startX,arr[temp.n-1].x+arr[temp.n-1].wid th,1,true);//缓动的对象是temp,缓动的方向是x方向,方式是线性的匀速没有其他方式,开始的位置,终点位置,持续的时间为0.5秒,}temp.addEventListener(MouseEvent.CLICK ,clickf);}//鼠标滑出的函数function outf(e) {var temp:MovieClip=e.target as MovieClip;new Tween(temp,"x",None.easeNone,temp.x,temp.startX,1,true);//缓动的开始位置是当前的位置x坐标,终点变成原来的坐标x值了temp.removeEventListener(MouseEvent.CLICK ,clickf);}var talpha:Tween;var tscx:Tween;var tscy:Tween;var trotation:Tween;function clickf(e) {for (i=0; i<8; i++) {if (=="smallpic"+i) {var mc:MovieClip=getChildByName("bigpic"+i) as MovieClip;setChildIndex(mc,7);if (talpha!=null||tscx!=null||tscy!=null||trotation!=null) {talpha.fforward();tscx.fforward();tscy.fforward();trotation.fforward();}talpha=new Tween(mc,"alpha",Bounce.easeOut,0,1,3,true);//缓动的对象,对象的属性,alpha初始值为o,结束值为1,缓动次数为3//或者用这三种之一tscx=new Tween(mc,"scaleX",Bounce.easeOut,0,1,1,true);tscy=new Tween(mc,"scaleY",Bounce.easeOut,0,1,1,true);//这是缓动对mc缩放属性的设置//或者trotation=new Tween(mc,"rotation",Bounce.easeOut,0,720,1,true);}}}实例八加载网上的图片进行遮罩//====创建新影片并设置其坐标及对载入的图片进行遮罩相当于容器spritevar mc:MovieClip =new MovieClip();addChild(mc);mc.scaleX=3;mc.scaleY=3;mc.x=275;mc.y=200;//==========加载网上图片var url:URLRequest=newURLRequest("/azihennaini/pic/item/58adad.jpg"); var loader:Loader =new Loader();loader.load(url);addChild(loader);//========loader.mask=mc;//加载的图片遮罩元件mcloader.contentLoaderInfo.addEventListener(PLETE ,f);var k:int=0;function f(e:Event ) {stage.addEventListener(Event.ENTER_FRAME ,zhezhao); }//=============遮罩即扇形旋转遮罩效果var d:uint=0;var i:int=1;stage.frameRate=24;function zhezhao(e:Event ):void {var zhezhaomc:MovieClip =new Mc();mc.addChild(zhezhaomc);zhezhaomc.rotation=d*3;d++;if (d==120) {while (mc.numChildren >0) {mc.removeChildAt(0);}d=0;tumc.gotoAndStop(i+1);i++;if (i==10) {i=0;}} }实例九旋转相册效果var snd:Sound=new Yy();var sp:Sprite=new Sprite();addChild(sp);sp.x=300,sp.y=300;var r:int=230;var ma:Matrix=new Matrix();ma.createGradientBox(480,480,0,-240,-240);sp.graphics.lineStyle(10);sp.graphics.lineGradientStyle("radial",[0x00ffcc,0x],[1,1],[240,250],ma);//线条渐变填充说明,渐变范围是240-250所以线条粗细是10,因此只取240-250的颜色//sp.graphics .beginGradientFill("radial",[0x00ffcc,0x],[1,1],[230,250],ma)sp.graphics.drawCircle(0,0,r);//外边的大圆var arrYuan:Array=[];var arrPic:Array=[];var yuan0:MovieClip=new Yuan();sp.addChild(yuan0);yuan0.scaleX=yuan0.scaleY=1.8;for (var i:int=0; i<8; i++) {var yuan:Yuan=new Yuan();sp.addChild(yuan);var pic:Pic=new Pic();pic.gotoAndStop(i+1);sp.addChild(pic);yuan.x=pic.x=r*Math.cos(i*Math.PI/4);//初始状态即为两者坐标相同yuan.y=pic.y=r*Math.sin(i*Math.PI/4);arrYuan.push(yuan);arrPic.push(pic);pic.addEventListener(MouseEvent.CLICK,ckF);}var mc:MovieClip;function ckF(e) {if (e.target.scaleX==1) {//如果点击的是小图则mc代表自己mc=e.target;} else {mc=new MovieClip();//如果点击的是大图则实例化一个空元件}snd.play(300);}var n:Number=0;//控制角的度数增加addEventListener(Event.ENTER_FRAME,frame);function frame(e) {for (var i=0; i<arrYuan.length; i++) {arrYuan[i].x=r*Math.cos(i*Math.PI/4+n);//让每个圆不停地运动//这里只写了圆的位置转动而省去了写图片的位置转动,是因为下面//有个圆和图片的距离m,初始状态就是二者的坐标相同所以m=0<因此会自动执行这两句//arrPic[i].x=arrYuan[i].x;// arrPic[i].y=arrYuan[i].y;arrYuan[i].y=r*Math.sin(i*Math.PI/4+n);if (arrPic[i]==mc) {//如果这张图片是点击的小图arrPic[i].x+=(yuan0.x-arrPic[i].x)/3;//缓动公式让小图向中间移动arrPic[i].y+=(yuan0.y-arrPic[i].y)/3;arrPic[i].scaleX=arrPic[i].scaleY+=(yuan0.scaleX-arrPic[i].scaleX)/3;//缩放也实现缓动} else {//否则如果这张图片不是被点击的小图即大图arrPic[i].x+=(arrYuan[i].x-arrPic[i].x)/2;//让大图回到小圆上去arrPic[i].y+=(arrYuan[i].y-arrPic[i].y)/2;arrPic[i].scaleX=arrPic[i].scaleY+=(arrYuan[i].scaleX-arrPic[i].scaleX)/2;}varm=Math.sqrt((arrYuan[i].x-arrPic[i].x)*(arrYuan[i].x-arrPic[i].x)+(arrYuan[i].y-arrP ic[i].y)*(arrYuan[i].y-arrPic[i].y));if (m<5) {//只要两者之间的距离小于5,那么就让二者的坐标相等否则,系统会一直执行缓动并且越来越慢所以看起来感觉看到的是两个并重合arrPic[i].x=arrYuan[i].x;//arrPic[i].y=arrYuan[i].y;}}n+=0.015;//增加的是弧度值}实例10 图片撕裂的相册效果var p:MovieClip =new Pic();//不用添加场景var w:Number=p.width;var h:Number=p.height;var num:uint=p.totalFrames;////效果函数function Effect():Sprite {var S:Sprite =new Sprite();addChild(S);var Spic:Sprite =new Sprite();S.addChild(Spic);var maskS:Sprite =new Sprite();S.addChild(maskS);maskS.graphics.beginFill(0xff0000);//遮罩矩形maskS.graphics.drawRect(0,0,w/2,h);Spic.mask=maskS;for (var i:uint =0; i<num; i++) {var pic:MovieClip =new Pic()Spic.addChild (pic)pic.gotoAndStop(i+1);//注意元件帧数从1开始pic.x=i*w;//横排图片}Spic.addEventListener(Event.ENTER_FRAME ,f);function f(e) {for (var k:uint =0; k<Spic.numChildren; k++) {var mc:MovieClip=Spic.getChildAt(k) as MovieClip;mc.x--;if (mc.x<=- w) {mc.x=(Spic.numChildren -1)*w;//如果出了场景就接到最后一张后面}}}return S;}var sprL:Sprite=Effect();//制作思路是制作一个效果,然后得到两个,把另一个水平翻转即可sprL.y=50var sprR:Sprite=Effect();sprR.y=50sprR.x=w;sprR.scaleX=-1;实例11 2010河北中考数学连杆运动//====画点和对应字母函数function dianf(str:String,xx:Number ,yy:Number ):MovieClip {var mc:MovieClip =new MovieClip();addChild(mc);var m:Matrix=new Matrix ;m.createGradientBox(20,20,-10,-10);mc.graphics.beginGradientFill(GradientType.RADIAL ,[0xffffff*Math.random (),0xff0000],[1,1],[0,255],m);mc.graphics.drawCircle(0,0,5);mc.x=xx;mc.y=yy;var txt:TextField =new TextField();mc.addChild(txt);var txtF:TextFormat =new TextFormat();txtF.bold=true;txtF.color=0xffff00;txtF.align="left";txtF.size=30;txt.defaultTextFormat=txtF;txt.x=0;txt.y=10;txt.text=str;return mc;}//=====实例化点和线段,圆var mcA:MovieClip=dianf("A",100,100);var mcB:MovieClip=dianf("B",400,100);var mcK:MovieClip=dianf("K",250,300);var sp:Sprite =new Sprite();addChild(sp);sp.graphics.lineStyle(4,0x00ff00);sp.graphics.moveTo(mcA.x,mcA.y);sp.graphics.lineTo(mcB.x,mcB.y);sp.graphics.drawCircle(mcK.x,mcK.y,100);var mcM:MovieClip=dianf("M",100+300*Math.random(),100);//======给点M添加拖动事件mcM.addEventListener(MouseEvent.MOUSE_DOWN ,dragf);function dragf(e) {var Rect:Rectangle=new Rectangle(100,100,300,1);//===限制点M只能在线段AB上拖动mcM.startDrag(true,Rect);stage.addEventListener(Event.ENTER_FRAME ,f);//添加画三角形事件}stage.addEventListener(MouseEvent.MOUSE_UP ,upf);function upf(e) {mcM.stopDrag();}//====计算∠MKN的度数MKtxt.x=100,MKtxt.y=10;var sjx:Sprite =new Sprite();//=====注意实例化一个全局三角形容器是为了方便清空画线addChild(sjx);function f(e) {var MK:Number=Point.distance(new Point(mcM.x,mcM.y),newPoint(mcK.x,mcK.y))/50;MKtxt.text="MK长度"+(MK);var angM:Number=Math.atan2(mcK.y-mcM.y,mcM.x-mcK.x)*180/Math.PI;//点M的角度var angMKN:Number =Math.acos ((4+MK*MK-9)/(4*MK))*180/Math.PI;//∠MKN的角度var angN:Number=angM+angMKN;Ntxt.text="点的角度"+angN;var Nx:Number=mcK.x+100*Math.cos(- angN*Math.PI/180);var Ny:Number=mcK.y+100*Math.sin(- angN*Math.PI/180); sjx.graphics.clear();sjx.graphics.lineStyle(3,0xff0000);sjx.graphics.moveTo(Nx,Ny);sjx.graphics.lineTo(mcK.x ,mcK.y );sjx.graphics.lineTo(mcM.x ,mcM.y);sjx.graphics.lineTo(Nx,Ny);}实例12场景中一个btn按钮[SWF(frameRate=50)]//===========先造一个矩形var rect:MovieClip =new MovieClip();addChild(rect);rect.x=50;//矩形的左上角坐标rect.y=50;rect.graphics.lineStyle(3,0xff0000);rect.graphics.drawRect(0,0,6*50,2*Math.sqrt (3)*50);rect.graphics.moveTo(6*50,2*Math.sqrt (3)*50);rect.graphics.lineTo(9*50,2*Math.sqrt (3)*50);//======字母函数function zimu(xx:Number ,yy:Number,biaoqian:String ):TextField { var txt:TextField =new TextField();var txtF:TextFormat =new TextFormat();txtF.color=0xffffff;txtF.size=30;txtF.bold=true;txt.x=50+xx;//因为矩形的左上角是50,50txt.y=50+yy;txt.defaultTextFormat=txtF;//注意要把文字设置放在前txt.text=biaoqian;addChild(txt);txt.height =40return txt;}//=========实例化字母var A:TextField=zimu(0,2*Math.sqrt(3)*50,"A");zimu(6*50,2*Math.sqrt (3)*50,"B");zimu(6*50,0,"C");zimu(0,0,"D");zimu(9*50,2*Math.sqrt (3)*50,"P");var O:TextField=zimu(3*50,2*Math.sqrt(3)*50,"0");var F:TextField=zimu(9*50,2*Math.sqrt(3)*50,"F");var E:TextField=zimu(3*50,2*Math.sqrt(3)*50,"E");//=========== 点函数function point():MovieClip {var mc:MovieClip =new MovieClip();addChild(mc);mc.graphics.beginFill(0xffffff);mc.graphics.drawCircle(0,0,5);return mc;}//==========实例化点的做设置和坐标var pointF:MovieClip=point();var pointO:MovieClip=point();pointF.x=50+9*50;pointF.y=50+2*Math.sqrt(3)*50;pointO.x=O.x;pointO.y=O.y;var pointE:MovieClip=point();pointE.x=3*50+50;pointE.y=50+2*Math.sqrt(3)*50;var pointG:MovieClip=point();var len:Number=Point.distance(new Point(E.x,E.y),new Point(F.x,F.y)); pointG.x=E.x+len*Math.cos(-60*Math.PI/180);pointG.y=E.y+len*Math.sin(-60*Math.PI/180);var G:TextField=zimu(pointG.x,pointG.y,"G");//=========var n:int=0;//用来控制鼠标点击的奇偶次数而控制开始或运动btn.addEventListener(MouseEvent.MOUSE_DOWN ,df); function df(e) {n%2==0?ad dEventListen er(Event.ENT ER_FRAME,f): removeEvent Listener(Eve nt.ENTER_FRAME,f);//添加帧频事件n++;}var vE:Number=1;var mcS:MovieClip=newMovieClip();//用来装阴影的部分addChild(mcS);mcS.filters =[new GlowFilter(),new BevelFilter()];function f(e) {// 因为帧频是50,所以速度是6*50/6一共六秒即可pointF.x-=1;pointE.x<=A.x?vE*=-1:0;pointE.x-=vE;//字母跟随点的坐标F.x=pointF.x;F.y=pointF.y;E.x=pointE.x;E.y=pointE.y;//计算点G的坐标len=Point.distance(new Point(E.x,E.y),new Point(F.x,F.y)); pointG.x=E.x+len*Math.cos(-60*Math.PI/180); pointG.y=E.y+len*Math.sin(-60*Math.PI/180);G.x=pointG.x;G.y=pointG.y ;//画三角形graphics.clear();graphics.lineStyle(3,0xffffff*Math.random ());//graphics.beginFill(0xff0000,0.5);graphics.moveTo(E.x,E.y);graphics.lineTo(F.x,F.y);graphics.lineTo(G.x,G.y);graphics.lineTo(E.x,E.y);mcS.graphics .clear()if (pointF.x<9*50+50&&pointF.x>=8*50+50) {mcS.graphics.beginFill(0x0000ff);mcS.graphics.moveTo(6*50+50,50+2*Math.sqrt(3)*50 );mcS.graphics.lineTo(6*50+50,50);mcS.graphics.lineTo(E.x+4*50*Math.cos(-60*Math.PI/180),E.y+4*50*Math.sin(-60*Math.PI /180));mcS.graphics.lineTo(E.x ,E.y);mcS.graphics.lineTo(6*50+50,50+2*Math.sqrt(3)*50);mcS.graphics.endFill();}if (pointF.x<8*50+50&&pointF.x>=50+6*50) {mcS.graphics.beginFill(0x00ff00);mcS.graphics.moveTo(6*50+50,50+2*Math.sqrt(3)*50 );mcS.graphics.lineTo(6*50+50,50+2*Math.sqrt(3)*50-(F.x-7*50)*Math.tan (60*Math.PI /180));mcS.graphics.lineTo(F.x+4*50*Math.cos(-120*Math.PI/180),F.y+4*50*Math.sin(-120*Math.PI /180));mcS.graphics.lineTo(E.x+4*50*Math.cos(-60*Math.PI/180),E.y+4*50*Math.sin(-60*Math.PI /180));mcS.graphics.lineTo(E.x ,E.y);mcS.graphics.lineTo(6*50+50,50+2*Math.sqrt(3)*50);mcS.graphics.endFill();}if (pointF.x<50+6*50&&pointF.x>=50+5*50) {mcS.graphics.beginFill(0xff0000);mcS.graphics.moveTo(F.x,F.y );mcS.graphics.lineTo(F.x+4*50*Math.cos(-120*Math.PI/180),F.y+4*50*Math.sin(-120*Math.PI /180));mcS.graphics.lineTo(E.x+4*50*Math.cos(-60*Math.PI/180),E.y+4*50*Math.sin(-60*Math.PI /180));mcS.graphics.lineTo(E.x ,E.y);mcS.graphics.lineTo(F.x,F.y);mcS.graphics.endFill();}if (pointF.x<50+6*50&&pointF.x>=50+5*50) {mcS.graphics.beginFill(0xff0000);mcS.graphics.moveTo(F.x,F.y );mcS.graphics.lineTo(F.x+4*50*Math.cos(-120*Math.PI/180),F.y+4*50*Math.sin(-120*Math.PI /180));mcS.graphics.lineTo(E.x+4*50*Math.cos(-60*Math.PI/180),E.y+4*50*Math.sin(-60*Math.PI /180));mcS.graphics.lineTo(E.x ,E.y);mcS.graphics.lineTo(F.x,F.y);mcS.graphics.endFill();}if (pointF.x<50+5*50&&pointF.x>=50+3*50) {mcS.graphics.beginFill(0xffaacc);mcS.graphics.moveTo(F.x,F.y );mcS.graphics.lineTo(G.x ,G.y);mcS.graphics.lineTo(E.x ,E.y);mcS.graphics.lineTo(F.x,F.y);。
使用flash as3代码来画图
使用flash as3代码来画图使用代码来画图但是我们不推荐这样做太累了演示使用Flash ActionScript 3.0 画一些基本的图形,以及对绘制的图形或其他可视对象做一些基本的转换•画图 - 通过 Shape 对象的 graphics 属性来执行矢量绘图命令o1、使用 lineStyle() 定义画图的线条样式o2、moveTo() - 设置当前绘画点;lineTo() - 以当前绘画点为起点,用当前定义的线条样式,画一条直线到目标点;curveTo() - 指定二次贝塞尔曲线的控制点和终点,从而完成曲线的绘制;drawRect() - 绘制矩形;drawCircle() - 绘制圆形;drawEllipse() - 绘制椭圆;o3、beginFill() 和 endFill() 用于填充他们之间所绘制的图形。
如果是渐变填充则对应的方法是 beginGradientFill 和 endFill()•转换 - 通过设置对象的 transform.matrix 属性,对其做相应的转换o Matrix.rotate() - 旋转的角度o Matrix.translate() - 平移的距离o Matrix.scale() - 缩放的比例o Matrix.b - 将矩阵垂直倾斜o Matrix.c - 将矩阵水平倾斜1、画图在 UI 上放置 8 个 Button名称分别为:btnLine, btnCurve, btnRectangle, btnCircle, btnEllipse, btnLiner, b tnRadial, btnClea分别用于演示:画直线,画曲线,画矩形,画圆形,画椭圆,线性渐变填充,放射性渐变填充,清除图形Main.aspackage{import flash.display.MovieClip;import ponentEvent;import fl.events.SliderEvent;import flash.display.Shape;import flash.geom.Matrix;import flash.display.GradientType;import flash.display.SpreadMethod;public class Main extends MovieClip{var originalMatrix:Matrix;public function Main():void{btnLine.addEventListener(ComponentEvent.BUTTON_DOW N, drawLine);btnCurve.addEventListener(ComponentEvent.BUTTON_DOW N, drawCurve);btnRectangle.addEventListener(ComponentEvent.BUTTON_D OWN, drawRectangle);btnCircle.addEventListener(ComponentEvent.BUTTON_DOW N, drawCircle);btnEllipse.addEventListener(ComponentEvent.BUTTON_DOW N, drawEllipse);btnLiner.addEventListener(ComponentEvent.BUTTON_DOW N, drawLinerGradient);btnRadial.addEventListener(ComponentEvent.BUTTON_DOW N, drawRadialGradient);btnClear.addEventListener(ComponentEvent.BUTTON_DOW N, clearGraphics);}// 画直线function drawLine(e:ComponentEvent):void{// lineStyle() - 定义画图的线条样式// 第一个参数:线条粗细,整数(0 - 255)// 第二个参数:线条的颜色值(16进制)// 第三个参数:不透明度(0 - 1)canvas.graphics.lineStyle(12, 0x000000);// moveTo() - 设置当前绘画点。
flash as3.0 常用代码
注意要将网页中的flash的ID号命名为"links"
加入收藏夹
on (release) {
getURL("BLOCKED SCRIPTvoid window.external.AddFavorite("","网页");", "_self", "POST");
ball.x=centerX+Math.cos(angle)*radius;
ball.y=centerY+Math.sin(angle)*radius;
angle+=speed;
}
椭圆旋转:
public function onEnterFrame(event:Event):void {
ball.x=centerX+Math.cos(angle)*radiusX;
角的正切值 = 对边 / 邻边
角度制与弧度制的相互转换:
弧度 = 角度 * Math.PI / 180
角度 = 弧度 * 180 / Math.PI
计算两点间距离:
dx = x2 – x1;
dy = y2 – y1;
dist = Math.sqrt(dx*dx + dy*dy);
缓动公式:
sprite.x += (targetX - sprite.x) * easing;//easing为缓动系数变量
}
// fantastic ! //
var bar:ListCollectionView = new ListCollectionView( ListCollectionView( ac ).list );
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
flash as3.0 常用代码1.全屏播放fscommand("fullscreen",true);2.打开时全屏,在该帧停止fscommand("fullscreen",true);stop();3.跳帧播放(从第几针开始播放后)on (press) {gotoAndPlay(?);}4.点击时开始播放on (press) {play();}5.退出语句如果是FLASH自带的控件on (click){ fscommand("quit",""); } 自已做的按钮on (release){ fscommand("quit",""); }6、当鼠标滑过影片剪辑时,停止播放时间轴。
on (rollOver) {_root.stop();}7、当在影片剪辑上按下鼠标时,停止播放影片剪辑。
on (press) {stop();}8、当影片剪辑上松开鼠标时,播放影片剪辑。
on (release) {play();}9、当鼠标滑离影片剪辑时,播放当前时间轴。
on (rollOut) {_root.play();}10、Goto:跳到一个指定的帧(Frame)Scene: 指定SceneFrame:Number,Label,Expression,Next Frame,Previous Frame 可以选择Frame 的编号,标号,通过表达式,下一帧,前一帧Expression: 定义表达式Control:Go to and Play,Go to and Stop 经过选择这个项目来确定到达指定的帧以后是继续播放还是停止例:Go to and Play (1) 跳到第一帧播放Go to Next Frame 跳到下一帧播放Go to and Stop ("intro") 跳到标号为intro 的帧播11、Play:播放Stop:停止Toggle High Quality:切换画面的细节程度Stop All Sounds:停止所有声音Get URL:打开指定的网址URL: 网址Windows:_self,_blank,_parent,_top 打开网址时使用的目标Variables on’t Send,Send use GET,Send use POST 变量的传递方式例:Get URL ("next.asp", window="_blank", vars=POST) 在新窗口中打开next.asp,并且传递参数12、FScommand:调用命令Command: 命令Arguments: 参数For standalone player:fullscreen,allowscale,showmenu,exec,quit 播放器使用的固定命令和参数例:FS Command ("fullscreen", "true") 设置全屏幕播放13、Load/Unload Movie:调入/释放外部的影片Action:Load movie into location,Unload movie from location,Load variables into location: 可以选择是否调入新影片,释放已经调入的影片,调入变量URL:影片的网址Location:Level,Target: 调入的层,或者是某一目标对象的位置Variables on’t Send,Send use GET,Send use POST: 变量的传递方式例子:Load Movie ("test.swf", 1): 把test.swf 调入到第一层Load Movie ("test.swf", "loadit", vars=GET): 把test.swf 调入到loadit 目标对象的位置Unload Movie ("loadit"): 把loadit 目标对象处的影片释放Load Variables ("makeit.asp", 2, vars=GET): 调用makeit.asp 并接收返回的变量14、Tell Target:指定目标对象Target: 目标对象例:Begin Tell Target ("obj") 指定目标对象objEnd Tell Target15、If Frame is Loaded:判断某帧是否调入Scene: 指定场景Frame:Number,Label,Expression: 指定帧,标号或者表达式Expression: 表达式例:If Frame Is Loaded (Scene 1, "end")End Frame Loaded:判断场景一的标号为end 的帧是否调入16、On MouseEvent 鼠标时间响应Event ress,Release,Release Outside,Roll Over,Roll Out,Drag Over,Drag Out,Key Press 各种事件:按下,放开,在外面放开,焦点移入,移出,拖过,拖出,按键按下例:On (Press) 鼠标按下的时候End OnOn (Key: s) 键盘上s 按下的时候End On17、If 判断条件是否成立Condition: 条件Add Else/Else If clause: 加入Else 再次判断例:If (a=10) 如果a=10 那么……End IfIf (a=10) 如果a=10 那么……不然……ElseEnd If18、Loop 循环Condition: 条件例:Loop While (a=10) 如果a=10 那么循环End Loop19、Call 调用函数帧或对象Frame: 函数帧例:Call ("make") 调用make 帧程序20、Set Property 设置属性Set:Y Positon,X Position,Y Scale,XScale,Alpha,Visibility,Rotation,Name,High quality,Show focus rectangle,Sound buffer time 设置y 坐标,x坐标,y 放大倍数,x 放大倍数,透明度,可视否,旋转角度,名称,精细度,焦点矩形框否是显示,声音缓冲的时间(默认5秒)Target: 目标对象value: 值例:Set Property ("aoe", X Position) = "12" 设置目标对象aoe 的x 坐标为12Set Property (Show focus rectangle) = "0" 取消焦点框21、Set Variable 设置变量Variable: 变量value: 值例:Set Variable: "test" = 10 设置test=1022、Duplicate/Remove Movie Clip 复制对象Action uplicate movie clip,Remove duplicate movie clip 可选择是复制还是删除Target: 目标对象New name: 新目标对象的名字Depth: 深度例:Duplicate Movie Clip ("aoe", "aoe2", 1) 复制aoe 一个新的动画,名字叫aoe2Remove Movie Clip ("aoe2") 删除目标对象aoe223、Drag Movie Clip 拖动影片片段Start drag operation: 开始拖动Target: 目标对象Constrain to rectangle:Left,Top,Right,Bottom 鼠标的位置,左上右下Lock mouse to center: 鼠标放置在中心Stop drag operation 停止拖动例:Start Drag ("aoe", L=2, T=3, R=4, B=5) 拖动目标对象aoe,位置在L=2, T=3, R=4, B=5Start Drag ("aoe", lockcenter) 拖动目标对象aoe,位置是在中心Stop Drag 停止拖动24、Trace 跟踪Message: 信息例:Trace ("aoe") 显示aoeTrace (aoe) 显示aoe 的值25、Comment 注释Comment: 注释例子:Comment ("计算") 注释:计算box_btn.onPress=function(){trace("ok");};按钮实例名称.事件处理方法=function(){ //处理程序};例如:n=1box_btn.onRelease=function(){n=n+1trace("n="+n);}当按钮被点一下的时候,Output窗口会输出:"n=2"onClipEvent(load){stop();}上面是影片剪辑的事件处理函数。
"()"的内部是事件。
在一个FLASH中在第一个场景里调用第二个场景,要在第一个场景里需要调用的地方加个按钮,然后在按钮上写下如下代码:on (release) {tellTarget ("_root") {gotoAndPlay ("mm2", 1);}}其中,"mm2"是第二个场景的MC的名称。
on (release) {loadmovie("fz3.swf",1);setProperty("fz3.swf",_x,100);setProperty("fz3.swf",_y,100);_root.createEmptyMovieClip("Card Game");mc.loadMovie("fz3.swf");mc._x=0;mc._y=0;}fz3.swf是需要调入的SWF文件,_x,_y是坐标轴Card Game是SWF中MC的名字on(release)结构只能用于按钮,其他相关的几种用法如on(press)、on(rollOver)、on(rollout)、on(dragOver)、on(dragOut)等。