1、ActionScript20实例学习笔记按键代码按键代码按键代码Backspace8A65Num 096Tab9B66Num 197Enter13C67Num 298Shift16D68Num 399Ctrl17E69Num 4100Alt18F70Num 5101Pause/Break19G71Num 6102Caps Lock20H72Num 7103Esc27I73Num 8104Space32J74Num 9105Page Up33K75Num *106Page Down34L76Num +107End35M77Num Enter13Home36N78Num -10937O79Num
2、.11038P80Num /11139Q81F111240R82F2113Print Screen44S83F3114Insert45T84F4115Delete46U85F51160)48V86F61171!49W87F7118250X88F81193#51Y89F91204$52Z90F101215%53F11122654F121237&558*569(57转义字符bfnrt字符退格符(ASCII8)换页符(ASCII12)换行符(ASCII10)回车符(ASCII13)制表符(ASCII9)双引号单引号反斜杠运算符 运算符+-*/%+-执行的运算加法减法乘法除法取余数递增递减3.比较运算
3、符=!=!=执行的运算小于大于小于等于大于等于等于严格等于不等于严格不等于字符串运算符 +进行连接时,对于不是字符串类型的数值,先将其转换成字符串,再进行连接。如果要将两个数字类型的数字进行连接,可以借助空字符串例:m=12+34 ;n=+12+34trace(m=+m+nn=+n) /输出结果 m=46 换行 n=1234.逻辑运算符!&名称逻辑非逻辑与(并且)逻辑或(或者)意义返回相反的结果两个均为true时结果为true一个为true时,结果即为true.赋值运算符运算符意义实例+=相加并赋值x+=5 等效于x=x+5-=相减并赋值x-=5 等效于x=x-5*=相乘并赋值x*=5 等效于
4、x=x*5/=相除并赋值x/=5 等效于x=x/5%=取模并赋值x%=5 等效于x=x%5&=换位与并赋值x&=5 等效于x=x&5赋值运算符的一种特殊形式:条件赋值运算符 a=条件 ? 数值1:数值2 /如果条件满足,则为值2,如果不满足,则为数值1事件处理机制用 on的键盘事件控制一个元件。新建一个元件,命名为mc,用移动键控制。(注:可以将按钮放在屏幕外)按钮事件说明Press在按钮上按下鼠标左键Release在按钮上按下鼠标左键并释放ReleaseOutside在按钮上按下鼠标左键然后将鼠标移到按钮外部并释放左键RollOver当鼠标指针从按钮外移到按钮上RollOut当鼠标指针从按钮
5、外移到按钮外DragOver在按钮外按下鼠标左键然后将鼠标指针拖到按钮上DragOut在按钮外按下鼠标左键然后将鼠标指针拖到按钮外keyPress”按下键键盘上指定的键事件处理函数说明onPress在按钮上按下鼠标左键时调用onRelease在按钮上按下鼠标左键并释放时调用onReleaseOutside在按钮上按下鼠标左键然后将鼠标移到按钮外部并释放左键时调用onRollOver当鼠标指针从按钮外移到按钮上时调用onRollOut当鼠标指针从按钮外移到按钮外时调用onDragOver在按钮外按下鼠标左键然后将鼠标指针拖到按钮上时调用onDragOut在按钮外按下鼠标左键然后将鼠标指针拖到按钮
6、外时调用onKeyDown当按下键时调用onKeyUp当释放按键时调用onSetFocus当按钮具有输入焦点而且释放某按键时调用onKillFocus当从按钮移除焦点时调用2.影片剪辑事件 onClipEvent() 影片剪辑事件说 明load影片剪辑被加载并显示在时间轴中unload影片剪辑被删除并从 时间轴中消失enterFrame播放头进入到影片剪辑实例所在的帧mouseMove移动鼠标mouseDown按下鼠标左键mouseUp释放鼠标左键keyDown按下键盘上的键keyUp释放键盘上的键data通过loadMovie()或loadVariables()方法接收外部数据时引起该事件事
7、件处理函数说明onLoad在影片剪辑被实例化并显示在时间轴上时调用onUnload在影片剪辑被从时间轴上删除后的第一帧中调用onEnterFrame以SWF文件的帧频持续调用onMouseMove移动鼠标时调用onMouseDown按下鼠标左键时调用onMouseUp释放鼠标左键时调用onKeyDown按下按键时调用onKeyUp释放按键时调用onData当所用数据都加载到影片剪辑时调用onPress在影片剪辑上按下鼠标左键时调用onRelease在影片剪辑上按下鼠标左键并释放时调用onReleaseOutside在影片剪辑上按下鼠标左键然后将鼠标移出并释放左键时调用onRollOver当鼠标
8、指针从影片剪辑外移到影片剪辑上时调用onRollOut当鼠标指针从影片剪辑上移到影片剪辑外时调用onDragOver在影片剪辑外按下鼠标左键然后将鼠标指针拖到影片剪辑上时调用onDragOut在影片剪辑上按下鼠标左键然后将鼠标指针拖出影片剪辑时调用onSetFocus当影片剪辑具有输入焦点而且释放某按键时调用onKillFocus当从影片剪辑移除焦点时调用1.影片剪辑的属性属性说明属性说明_name实例名称_totalframes总帧数_xx坐标位置_framesloaded已经加载的帧数_yy坐标位置_url所在swf文件URL_rotation旋转角度_highqualityswf文件呈现
9、的品质_alpha透明度_focustrect焦点时有无黄色矩形_visible可见性_soundbuftime声音缓冲的秒数_width宽度enabled是否启用的状态_heigth高度menu关联的ContextMenu_xscale水平缩放百分比hitArea点击区域_yscale竖直缩放百分比focuEnabled是否能够接受焦点_xmouse鼠标指针的x坐标tabIndexTab键顺序_ymouse鼠标指针的y坐标tabEnabled是否具有Tab键顺序_parent父级影片剪辑tabChildren子级有无Tab键顺序_target实例的目标路径trackAsMenu可否接收rel
10、ease事件_currentframe播放头所在的当前帧useHandCursor是否显示手型光标2.fscommand函数P194命令参数作用quit无关闭播放器fullscreentrue/false全屏模式allowscaletrue/false是否允许缩放showmenutrue/false是否显示菜单exec应用程序路径在播放器内执行应用程序trapallkeystrue/false跟踪按键事件数学方法说明数学方法说明Math.abs()计算绝对值Math.sin()计算正弦值Math.random()返回0-1的随机值Math.cos()计算余弦值Math.ceil()向上取整Ma
11、th.tan()计算正切值Math.floor()向下取整Math.asin()计算反正弦值Math.round()四舍五入Math.acos()计算反余弦值Math.max()取较大的一个Math.atan()计算反正切值Math.min()取较小的一个Math.atan2()计算从x轴到点的角度Math.sqrt()计算平方根Math.exp()计算指数值Math.pow()求幂Math.log()计算自然对数1.鼠标位置主场景的鼠标位置:_root._xmouse _root._ymouse影片剪辑鼠标位置:_root.tt_x _root.tt._y实例:打蜜蜂游戏P83实例:用cre
12、ateEmptyMovieClip方法创建影片剪辑852.管理深度:myMc.getDepth()/返回指定影片剪辑实例的深度parentMc.getInstanceAtDepth(depth)/返回位于parentMc内部深度depth上的影片剪辑实例实例:鼠标跟随下雪效果3.动态实现遮蔽:语句:mymc.setMask(遮蔽物) mymc为用来被遮蔽的物体名称;遮蔽物位于遮蔽层取消:mymc.setMask(null) 实例:用遮蔽实现橡皮擦特效4.拖动影片剪辑方法:myMc.starDrag(lock,left,top,right,bottom) /开始拖动该语句使影片剪辑成为可拖动的。
13、参数lock是一个布尔值,如果为true,拖动过程中将鼠标指针锁定到元件中心;如果为false,在拖动过程影片剪辑保持与鼠标在开始拖动时的相对位置不变。默认为false myMc.stopDrag()注:同一个动画中只能有一个影片剪辑被拖动。因此在开始拖动一个新的影片剪辑时,前一个将会自动停止。函数:startDrag(target, lock,left,top,right,bottom)stopDrag(target)/target为要拖动的名称String类:S1=asS2=new String(as)trace(typeof(s1) /结果为stringtrace(typeof(s2)
14、/结果为Object1.属性:lengthvar str=abctrace(str.length)/结果为32.方法:(1)indexOf:方法:返回指定字符串的第一个匹配项的位置(2)lastindexOf方法:返回指定字符串的最后匹配项的位置mySting.indexOf(要检索的字符串,开始检索的位置)mySting. lastndexOf(要检索的字符串,开始检索的位置)(3)chatAt方法:返回指定位置处的字符 (4)substring方法:返回两个检索之间的字符串(5)substr方法:返回从开始位置指定长度的字符串(6)split方法:将字符串拆分成多个子字符串,作为字符串数组
15、返回声音类1.停止所有声音:stopAllSounds()2.使用Sound类之前,首先要通过构造函数来创建Sound对象。var mySound=new Sound(myMc) /控制影片剪辑myMc中的声音,如果省略myMc,则控制所有的声音停止的控制方法var mySound=new Sound()mySound.start(20) /开始从20处播放。如果没有,则是从开始播放mySound.stop() /声音结束实例3.attachSound方法播放声音var ms = new Sound(); ms.attachSound(hit); /ms中加入链接为hit声音4.loadSou
16、nd方法加载声音 loadSound(路径,true or false) true数据流,false事件var yin=new Sound()yin.loadSound(F:/mu/3.mp3,false)5.控制音量的方法十、全局控制1.Stage类 P193(1)隐藏菜单。这里的菜单指播放器的菜单栏和右键菜单命令:Stage.showMenu=false (1)缩放模式:scaleMode属性用于控制SWF文件的缩放模式。 系统默认Stage.scaleMode=showAllshowAll :SWF文件随着窗口的缩放调整自身大小,长宽比例不变。exactFit : SWF文件随着窗口的缩
17、放调整自身大小,长宽比例变化,充满全屏noBorder: SWF文件随着窗口的缩放调整自身大小,保证长宽比例不变下充满全屏(有些画面可能缺失)noScale: SWF文件不随着窗口的缩放调整大小,当窗口大于舞台时,以背景色填充2.fscommand函数P194命令参数作用quit无关闭播放器fullscreentrue/false全屏模式allowscaletrue/false是否允许缩放showmenutrue/false是否显示菜单exec应用程序路径在播放器内执行应用程序trapallkeystrue/false跟踪按键事件格式:fscommand(命令,属性)1.关闭播放器实例:单击按
18、钮退出程序on(release)fscommand(quit,)2.全屏模式在事件轴上书写命令fscommand(fullscreen,true)3.执行应用程序利用fscommand函数的exec命令可以通过SWF文件调用EXE应用程序。使用该命令调用应用程序必须位于与SWF文件相同目录下的fscommand文件夹中。实例:btn.onRelease=function()fscommand(exec,setup.exe7.绘画方法MovieClip类的方法可以通过AS来动态绘制图形。moveTo移动绘画位置 myMc.moveTo(x,y) (x,y)是要将绘画位置移动到的点的坐标lineS
19、tyle方法定义用lineTo和curveTo方法画线的线条样式。myMc.lineStyle(线条粗细,线条颜色,透明度)0xFFFFFF白色 、0x000000黑色 、0xFF0000红色 、0x00FF00绿色 、0x0000FF蓝色lineTo绘制直线 myMc.lineTo(x,y) 起点在当前位置,终点在(x,y)实例:用绘画方法画直线P97onMouseDown=function() depth=_root.getNextHighestDepth (); drawing=true; x0=_root._xmouse ; y0=_root._ymouse ;onMouseMove=
20、function() if(drawing) _root.createEmptyMovieClip (line+depth,depth); with(_rootline+depth) moveTo(x0,y0); lineStyle(0,0x0000FF,100); lineTo(_root._xmouse,_root._ymouse )onMouseUp=function() drawing=false绘制矩形onMouseDown=function() depth=_root.getNextHighestDepth (); drawing=true; x0=_root._xmouse ;
21、y0=_root._ymouse ;onMouseMove=function() if(drawing) _root.createEmptyMovieClip (juxing+depth,depth); with(_rootjuxing+depth) moveTo(x0,y0); lineStyle(0,0x0000FF,100); lineTo(_root._xmouse,y0); lineTo(_root._xmouse,_root._ymouse ) lineTo(x0,_root._ymouse ) lineTo(x0,y0)onMouseUp=function() drawing=f
22、alse实例:用绘画方法画曲线P98curveTo绘制曲线moveTo(100,100); curveTo(300,200,300,300)实例:绘制曲线 P98onMouseDown=function() drawing=true; /绘画开始 if(!down1) /如果不是鼠标按下第一次则为第一次 depth=_root.getNextHighestDepth (); down1=true; /标识第一次 down2=false; x1=_root._xmouse ; y1=_root._ymouse ; else down1=false; down2=true;onMouseMove=
23、function() if(drawing) if(down1) /如果鼠标按下第一次 _root.createEmptyMovieClip (curve+depth,depth); with(_rootcurve+depth) moveTo(x1,y1); lineStyle(0,0x0000FF,100); lineTo(_root._xmouse ,_root._ymouse ); else if(down2) /如果鼠标按下第二次则画曲线 _root.createEmptyMovieClip (curve+depth,depth); with(_rootcurve+depth) mov
24、eTo(x1,y1); lineStyle(0,0x0000FF,100); curveTo(_root._xmouse ,_root._ymouse,x3,y3 ); updateAfterEvent(); /刷新显示 onMouseUp=function() drawing= false; if(down1) x3=_root._xmouse ; y3=_root._ymouse ; else down2=false;基本类实例0:时间函数和课件的模板制作(第一帧和第二帧)实例1:确定变量的数据类型 typeof实例2:转义字符的使用实例3:变量的声明方式实例4:循环结构实例5:四处弹跳的
25、小球实例6:mouseMove事件实现鼠标跟随实例7:带角度变化的鼠标跟随实例8:getCode方法获得键盘代码实例9 :onMouseMove函数实现鼠标跟随P49影片剪辑的load应用P45实例10: onEnterFrame函数实现图片悬停P51实例11:计算1到1000之间的素数(TextArea组件)P53实例12:实行无限循环的方法P53(将上一个例子修改)实例13:侦听器的建立和删除(侦听root的键盘事件和鼠标事件等)P54实例14:复合键控制图片的移动P59()实例15:getAscii方法制作打字游戏P60(.fromCharCode、 substring(0, 1) )P
26、60实例16:rotation实现鼠标跟随打台球P71实例17:通过_alpha属性实现图片渐入渐出P72实例18:鼠标移进开始播放P75实例18乙:制作loading动画实例19:duplicateMovieClip动态复制影片剪辑P79(舞台上必须有一个才行)实例20:用attachMovie方法制作雪花飞舞P81(直接从库中调用元件)实例21:removeMovieClip动态删除duplicateMovieClip和attachMovie创建的元件(打蜜蜂游戏)实例22:createEmptyMovieClip创建空实例:createEmptyMovieClip(名称,深度)(遍历的应
27、用)实例23: myMc.loadMovie(url)导入图片:(矩阵排列对象)(完成一半)P87实例24:鼠标跟随画图效果(管理深度depth)P89(鼠标跟谁画图)实例25:用SwapDepths方法实现立体旋转特效(交换两个影片剪辑的深度)实例26:拖动影片剪辑(放大镜的制作)实例27:动态创建遮蔽P94(一种隐藏图片的方式)实例28:碰撞检测实例29:多个物体的碰撞检测实例31:文字的淡入淡出(动态文本)实例32:随机文字特效(动态文本)实例33:可输入时间的倒计时文件onchanged时间的侦听器实例34:动态创建文本字段:createTextField和动态删除文本字段:removeTextField 设置文本格式的方法 _root.createTextField(名称,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1