收藏 分销(赏)

Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc

上传人:xrp****65 文档编号:8972699 上传时间:2025-03-09 格式:DOC 页数:8 大小:45KB
下载 相关 举报
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第1页
第1页 / 共8页
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第2页
第2页 / 共8页
点击查看更多>>
资源描述
本节知识要点   1、loadMovie("url",target [, method])   "url" :要加载的 SWF 文件或 JPEG 文件的绝对路径或相对路径。   使用相对路径一般应将播放的.swf文件与要加载的.swf文件放在同一文件夹中。绝对 路径必须有详细的路径地址。   target:目标影片剪辑(mc元件)的名称和路径。目标影片剪辑将替换为加载的 SWF 文件或图像。   method 可选参数,一般可以不选。   如果 SWF 文件加载到目标影片剪辑,则可使用该影片剪辑的目标路径来定位加载的 SWF 文件。加载到目标的 SWF 文件或图像会继承目标影片剪辑的位置、旋转和缩放属性。加载的图像或 SWF 文件的左上角与目标影片剪辑的注册点对齐   2、MovieClip._lockroot   因为用loadMovie()加载的外部文件是加载到一个mc元件上,所以,外部文件中指向场景(_root)的路径此时应该是指向这个mc元件而不是主文件的场景。使用MovieClip._lockroot可以使加载的文件中的_root仍然是指向原来文件的场景.   3、my_mc.getNextHighestDepth()   返回一个整数,即影片剪辑的下一个可用的深度值   4、switch   创建动作脚本语句的分支结构。像 if 动作一样,switch 动作测试一个条件,并在条件返回 true 值时执行语句。   5、case   用法:case expression:statements   定义用于 switch 动作的条件。如果 case 关键字后的 expression 参数在使用全等 (===) 的情况下等于 switch 动作的 expression 参数,则执行 statements 参数中的语句。   6、 _global 对象   创建全局变量、对象或类。   例题---仿电视的多画面与画中画效果   请看效果:   点击查看动画效果<   制作思路:只要在同一场景中使用多个mc,使它们同时载入外部.swf文件或者jpg,那么就可以实现多画面效果。但是,在多画面与画中画的状态下,因为各mc载入外部.swf文件时有一个时间差,所以各画面仿电视的同步播放比较困难。这需要被调入的外部.swf文件和主场景文件的配合。   我们打开外部文件“111.fla”文件,AS脚本为:   1、在帧上的脚本   第 1 帧:    gotoAndPlay(x);//这个x是主场景中设置的全局变量;   最后1帧: x=1;//设置本地变量x   打开主文件6.8.fla,在这个源文件上的脚本如下:   第 1 帧 : 复制代码 代码如下:   stop();   swf1 = "111.swf";//设置变量swf1来表示外部.swf文件   loadMovie(swf1, e); //在目标元件e上调入swf1   e._x = 125; //设置目标元件e的坐标(即调入swf1的坐标)   e._y = 50;   第 2 帧 : 复制代码 代码如下:   clip = [a, b, c, d]; //设置数组对象,数组元素为4个目标mc   lp = [" " " " " "        //设置数组对象,数组元素为网上.swf    _global.x = _root.e._currentframe;      //把目标mc播放的当前帧(即调入外部文件的当前帧)用全局变量x表示;      //下面脚本中使调入外部文件的从全局变量x帧开始播放;    m = getNextHighestDepth();//取得下一个可用的mc的深度;    a.swapDepths(m);     //设置mc元件a的深度为下一个可用的mc的深度;    loadMovie(swf1, a);    //在目标元件a上调入swf1    a._x = 125;        //设置目标元件a的坐标(即调入swf1的坐标)    a._y = 50;    a._xscale = 50;     //设置目标元件a的放大系数(即调入swf1的放大系数)    a._yscale = 50;    j = k=0;        //设置变量初值   第 3 帧 复制代码 代码如下:   _global.x=_root.e._currentframe;//与第2帧上的脚本类同   m=getNextHighestDepth()   b.swapDepths(m)   loadMovie(swf1, b);   b._x = 125;   b._y = 250;   b._xscale = 50;   b._yscale = 50;   第 4 帧 复制代码 代码如下:   _global.x=_root.e._currentframe;//与第2帧上的脚本类同   m=getNextHighestDepth()   c.swapDepths(m)   loadMovie(swf1,c);   c._x = 400;   c._y = 250;   c._xscale = 50;   c._yscale = 50;   第 5 帧 复制代码 代码如下:   _global.x = _root.e._currentframe;//与第2帧上的脚本类同   m = getNextHighestDepth();   d.swapDepths(m);   loadMovie(swf1, d);   d._x = 400;   d._y = 50;   d._xscale = 50;   d._yscale = 50;   unloadMovie(e); //删除最开始调入的swf   第 6 帧 复制代码 代码如下:   e._lockroot = true; //使被选中的元件在调入的外部文件的_root指向本身的主时间轴   loadMovie(lp[k], e); //配合按扭中的mc的变化;   2、在按扭上的脚本   在“多屏幕”按扭上的脚本: 复制代码 代码如下:  on (release) {   nextFrame();  }   在“单屏”按扭上的脚本: 复制代码 代码如下:  on (release) {    for (i=0; i<4; i++) {    unloadMovie(clip[i]);  //删去元件a,b,c,d上加载的外部swf文件;    clip[i].swapDepths(-i-1);//降低a,b,c,d的深度,使元件e加载的swf能显示出来;    clip[i]._alpha = 100;  //元件a,b,c,d的透明度有可能降低,这里把恢复它们的透明度    }   nextFrame();//到下一帧停下  }   在“屏幕选择”按扭上的脚本 复制代码 代码如下:  on (press) {   txt = ""; //设置文本txt为空   switch (j=j+1) {//创建switch 动作脚本语句的分支结构   case 1 : //如果j==1,就执行    a._alpha = 40; //元件a是透明度为40    break; //跳出switch循环体。以下类同    case 2 :    a._alpha = 100;    b._alpha = 40;    break;   case 3 :    b._alpha = 100;    c._alpha = 40;    break;   case 4 :    c._alpha = 100;    d._alpha = 40;    break;   case 5 :    d._alpha = 100;    j = 0;    break;   }  }   在“更换节目”按扭上的脚本 复制代码 代码如下:  on (release) {    if (j == 0) {      txt = "请先选择屏幕";    } else {          //当j不等于0时,执行下列命令:    clip[j-1]._alpha = 100;  //恢复被选中的元件的透明度    clip[j-1]._lockroot = true;//使被选中的元件在调入的外部文件的_root指向本身的主时间轴    loadMovie(lp[k], clip[j-1]);//在clip[j-1]元件中调入数组lp中第k个元数表示的网址    k++;   if (k == lp.length) {//数组lp中元素个数   k = 0;   }  } }   在第 6 帧上 “多屏”按扭上的脚本 复制代码 代码如下:  on (release) {   gotoAndStop(1);  }   在第 6 帧上“更换节目”按扭上的脚本 复制代码 代码如下:  on (release) {   k++;   if (k == 7) {    //数组lp中有7个元素    k = 0;   }   e._lockroot = true;   loadMovie(lp[k], e);//在e元件中调入数组lp中第k个元数表示的网址 }   作业   把2至4帧的脚本用自定义函数简化;把在“屏幕选择”按扭上的脚本用函数或者数组变量简化。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服