flash 常用函数一、影片控制函数1) gotoandPlay() 跳转某一帧播放2) gotoandStop() 跳转某一帧停止3) nextframe 转到下一帧如 on(press) {nextframe();}4) prevframe 转到上一帧如 on(press) {prevframe();}5) play 开始向后播放影片如on(press){play();}6) stop 停止当前播放位置如on(press){stop();}7) nextscene 转到下一个场景如 on(press){nextscene();}8) prevscene 转到上一个场景如 on(press){prevscene();}9)stopallsounds 停止所有声音如 on(press){stopallsounds();}二.浏览器/网络1) fscommand("fullscreen", "true"); 全屏显示可以加在第一帧中,也可以加在按加中.如加在按钮中则为on(press){fscommand("fullscreen", "true"); }fscommand("quit"); 退出如果加在帧中程序为fscommand("quit"); 意为当播放此帧自动退出.若加在铵钮中则为on (release) {fscommand("quit");}意为当单击时退出.2) getURL 定位地址可以对文件加,也可以对按钮加.对文本加:选中整个文本或单个文字,在文本属性栏的链接加地址如:对按钮加:选中按钮,点动作,双击getURL结果为: on(press){geturl("","_blank");} //blank以新的窗口打开3) loadmovie 从外部直加载影片,可以对按钮加,也可以对帧加按钮加如: on(press){loadmovienum("a.swf","1");}给帧加:loadmovienum("a.swt","1");FLASH动作脚本代码集锦1 、简单 loading 代码:方法 1 、使用载入字节数判断b=getBytesTotal();// 获取总的字节数a=getBytesLoaded();// 已经下载的字节数onEnterFrame=function(){// 进入帧时 , 进行判断if (a == b) {// 如果载入的字节数等于总的字节数delete this.onEnterFrame// 删除进入帧gotoAndPlay("frame");// 转入到你要播放的帧] else {// 否则a=getBytesLoaded();// 已经下载的字节数percent=int(a/b*100)+"%";// 计算已经下载的百分比]}把上面方法放入第一帧就可以了方法 2 、使用载入的帧数判断_用 Action 语法地 if frame is loaded 来实现 , 新建一层,这层专门放 Action,第一帧,ifFrameLoaded (" 场景 ", frame) {// 假如场景中地祯数已经载入goto and play() // 跳至并播放某某祯 ( 自己设定 )}第二帧, O*Np@Qgoto and play(" 场景 1", 1)// 跳至并播放第一祯循环再加上一个 load 地 MC 循环播放在这两帧的中间,就 OK 了。
2 、用 flash 做那种弹出的小窗口分两步:给 flash 中的按钮加入如下 action:on (release) { idd{getURL("javascript:MM_openBrWindow('newweb.htm','','width=600, height=100')");在HTML 页面的<head>...</head> 之间加入下面的javascript 代码 .<script language="javascript"><!-- ~Yfunction MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); ;}//--></script>3 、载入 swf 文件的控制在 flash 中可以使用 loadmovie ()和 loadmovienum ()两个函数控制,具体代码如下:loadmovie 载入的控制_root.createEmptyMovieClip ( "aa" , 1 );with ( aa ) {_x = 50 ;_y = 100 ;_width=200_height=300_alpha=50loadMovie ( "02.swf" );}loadMovieNum 的载入控制:loadMovieNum ( "02.swf" , 1 );onEnterFrame = function () {if ( _level1 ) {with ( _level1 ) {_x = 50 ;_y = 100 ;}delete onEnterFrame ;}};在 flash 2004 中,增加了 MovieClipLoader 类,使用它可以控制播放,下面是一个测试代码:var mcl= new MovieClipLoader(); // 定义新的MovieClipLoader 对象~var listener = new Object(); // 定义一个新的对象,用来监听 load 进程listener.onLoadProgress=function(target,loadedBytes,tota lBytes ){ //onloadprogress加载过程中每当将加载的内容写入磁盘时调用// 其中 loadedBytes 是已经下载的字节, totalBytes 是正在加在的文件的总字节数x=loadedBytesy=totalBytes//trace(x+ " bytes 已经 load 了 ");//trace(totalBytes + " bytes 需要 load");d=x*100/y // 计算已经载入的百分比)listener.onLoadInit = function(target) // 当执行加载的剪辑的第一帧上的动作时调用{if(d<100){ // 如果没有加载完成,不要播放target.stop();} else { // 加载完成,可以设置加载的 swf 文件开始播放的帧数target.gotoAndPlay(2);}target._width=400 // 设置加载的影片的大小及其位置等相关属性target._height=350target._x=25target._y=50}mcl.addListener(listener); // 注册一个新的监听对象mcl.loadClip("***.swf",1)// 使用自定义的对象,加载 swf 文件4 、设为首页on (release) {getURL("javascript:void(document.links.style.behavior='u rl(#default#homepage)');voiddocument.links.setHomePage('/')","_self", "POST");}注意要将网页中的 flash 的 ID 号命名为 "links"加入收藏夹on (release) {getURL("javascript:void window.external.AddFavorite(' ',' 网页 ');","_self", "POST");}5 、如何随机设置 MC 颜色?方法 1 、 MC 实例名为 "mc"mycolor=new Color("mc")mycolor.setRGB(random(0xffffff))方法 2 、 MC 实例名为 "mc"mycolor=new Color("mc") [mycolor.setRGB(random(16777215))方法 3 、 myColor = new Color(mc);myColorTransform = new Object();// 用 new Object() 为//setTrandform() 创建参数并随机取值myra = random(100);myrb = random(255);myga = random(100);mygb = random(255);myba = random(100);mybb = random(255);myaa = random(100);myab = random(255);myColorTransform = {ra:myra, rb:myrb, ga:myga, gb:mygb, ba:myba, bb:mybb, aa:myaa, ab:myab};myColor.setTransform(myColorTransform);方法 4 、 mycolor = new Color(mc);mycolor.setRGB(random(255)<<16|random(255)<<8|random(255));6 、关于随机数的技巧用来产生 6--20 之间的 5 个不重复的随机数1): 首先产生一个随机数 , 放在数组对象中的第一个位置2): 产生一个新的随机数3): 检查新产生的随机数和所有目前已产生的随机数是否相同 , 若是相同则返回 (2), 否则返回 (4)4): 将新的随机数加入数组对象中下一个数组元素内5): 检查数组对象个数是否已达到 5 个 , 若是跳到 (6), 否则返回 (2)6): 结束AS 如下 :data1=newArray(5);tot=1;data1=[tot-1]=random(20-6+1)+6;do{gen_data=random(20-6+1)+6;reapeat_data=0;for(i=0,i<=tot-1;i++){if(gen_data==datareapeat_data=1;break;}}if(reapeat_data==0){tot++data[tot-1]=reapeat_data;}}while(tot<5);trace(data1);7 、如何禁止右键菜单、缩放、全屏在第一桢中输入下面命令:全屏-> FS Command ("fullscreen", true)禁止缩放-> FS Command ("allowscale", False)禁止菜单-> FS Command ("showmenu", False)fscommand 的方法还是只能适用于 fp ,在网页中使用还是必须添加额外的参数<PARAM Name="menu" value="false">或者用最简单的一句 as ,在 fp 和网页中均适用:Stage.showMenu=false;8 、如何实现双击效果?把下面的代码放到按钮上:on (press) {time = getTimer()-down_time;if (time<300) {trace("ok");}down_time = getTimer();}这样的话,如果都用比较麻烦,写了一个类来判断MovieClip.prototype.doubleClick = function() {this.timer2 = getTimer()/1000;if ((this.timer2-this.timer)<0.25) {return true;} else {this.timer = getTimer()/1000;return false;}};继承了 mc 的类,可以重复使用,当然也可以封装为 2 。