收藏 分享(赏)

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

上传人:scg750829 文档编号:8201930 上传时间:2019-06-13 格式:DOC 页数:8 大小:45KB
下载 相关 举报
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第1页
第1页 / 共8页
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第2页
第2页 / 共8页
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第3页
第3页 / 共8页
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第4页
第4页 / 共8页
Flash AS 入门教程 loadMovie应用举例 多画面与画中画实现.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、本节知识要点1、loadMovie(“url“,target , method)“url“ :要加载的 SWF 文件或 JPEG 文件的绝对路径或相对路径。使用相对路径一般应将播放的.swf 文件与要加载的.swf 文件放在同一文件夹中。绝对 路径必须有详细的路径地址。target:目标影片剪辑(mc 元件)的名称和路径。目标影片剪辑将替换为加载的 SWF 文件或图像。method 可选参数,一般可以不选。如果 SWF 文件加载到目标影片剪辑,则可使用该影片剪辑的目标路径来定位加载的 SWF 文件。加载到目标的 SWF 文件或图像会继承目标影片剪辑的位置、旋转和缩放属性。加载的图像或 SWF

2、文件的左上角与目标影片剪辑的注册点对齐2、MovieClip._lockroot因为用 loadMovie()加载的外部文件是加载到一个 mc 元件上,所以,外部文件中指向场景(_root)的路径此时应该是指向这个 mc 元件而不是主文件的场景。使用 MovieClip._lockroot 可以使加载的文件中的_root 仍然是指向原来文件的场景.3、my_mc.getNextHighestDepth()返回一个整数,即影片剪辑的下一个可用的深度值4、switch创建动作脚本语句的分支结构。像 if 动作一样,switch 动作测试一个条件,并在条件返回 true 值时执行语句。5、case用

3、法:case expression:statements定义用于 switch 动作的条件。如果 case 关键字后的 expression 参数在使用全等 (=) 的情况下等于 switch 动作的 expression 参数,则执行 statements 参数中的语句。6、 _global 对象创建全局变量、对象或类。例题- 仿电视的多画面与画中画效果请看效果:点击查看动画效果制作思路:只要在同一场景中使用多个 mc,使它们同时载入外部.swf 文件或者 jpg,那么就可以实现多画面效果。但是,在多画面与画中画的状态下,因为各 mc 载入外部.swf 文件时有一个时间差,所以各画面仿电视的

4、同步播放比较困难。这需要被调入的外部.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 上调入 swf1e._x = 125; /设置目标元件 e 的坐标(即调入 swf1的坐标)e._y = 50

5、;第 2 帧 :复制代码代码如下:clip = a, b, c, d; /设置数组对象,数组元素为4个目标 mclp = “http:/ “http:/ “http:/ “http:/ “http:/ “http:/ = _root.e._currentframe;/把目标 mc 播放的当前帧(即调入外部文件的当前帧)用全局变量 x 表示;/下面脚本中使调入外部文件的从全局变量 x 帧开始播放;m = getNextHighestDepth();/取得下一个可用的 mc 的深度;a.swapDepths(m); /设置 mc 元件 a 的深度为下一个可用的 mc 的深度;loadMovie(s

6、wf1, a); /在目标元件 a 上调入 swf1a._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 = 5

7、0;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

8、);d._x = 400;d._y = 50;d._xscale = 50;d._yscale = 50;unloadMovie(e); /删除最开始调入的 swf第 6 帧复制代码代码如下:e._lockroot = true; /使被选中的元件在调入的外部文件的_root 指向本身的主时间轴loadMovie(lpk, e); /配合按扭中的 mc 的变化;2、在按扭上的脚本在“多屏幕” 按扭上的脚本:复制代码代码如下:on (release) nextFrame();在“单屏”按扭上的脚本:复制代码代码如下:on (release) for (i=0; i4; i+) unloadMov

9、ie(clipi); /删去元件 a,b,c,d 上加载的外部 swf 文件;clipi.swapDepths(-i-1);/降低 a,b,c,d 的深度,使元件 e 加载的 swf 能显示出来;clipi._alpha = 100; /元件 a,b,c,d 的透明度有可能降低,这里把恢复它们的透明度nextFrame();/到下一帧停下在“屏幕选择” 按扭上的脚本复制代码代码如下:on (press) txt = “; /设置文本 txt 为空switch (j=j+1) /创建 switch 动作脚本语句的分支结构case 1 : /如果 j=1,就执行a._alpha = 40; /元件

10、 a 是透明度为40break; /跳出 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时,执行下列命令:clipj-1._alph

11、a = 100; /恢复被选中的元件的透明度clipj-1._lockroot = true;/使被选中的元件在调入的外部文件的_root 指向本身的主时间轴loadMovie(lpk, clipj-1);/在 clipj-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(lpk, e);/在 e 元件中调入数组 lp 中第 k 个元数表示的网址作业把2至4帧的脚本用自定义函数简化;把在“屏幕选择”按扭上的脚本用函数或者数组变量简化。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报