当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > MX中如何实现swf文件的完美跳转

Flash动画制作
Flash鼠标跟随教程:点蜡烛
Flash教程:无AS下雪动画效果
flash绘画教程:绘制矢量人物
flash8教程:绘制中国风荷塘风景
flash8绘画教程:绘制逼真青翠竹林
FLASH翻译教程:绘制逼真奥迪轿车全过程
Flash8 教程:AS打造光影变换动画效果
Flash教程:AS数学课件—推导三角形面积
Flash教程:简单制作图形变换效果
Flash AS教程:用AS3 两招提取标记语言里的内容
Flash教程:教你表达动画人物走路动作的技巧
Flash教程:用AS打造小球自由运动和碰撞检测的动画
Flash初级教程:介绍两种按钮控制小球左右滚动的写法
Flash教程:教你制作弹力球小游戏
Flash新手教程:一个简单的遮照
Flash 8教程: 制作模糊遮罩效果细析
Flash教程:真人秀眼睛转动教程
Flash教程:用填充变形工具创建不间断滚动图片教程
Flash教程:用AS简单打造下雪效果
Flash教程:用AS打造漂亮线条效果

Flash动画制作 中的 MX中如何实现swf文件的完美跳转


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 78 ::
收藏到网摘: n/a

使用 loadMovieNum 动作将影片加载到 Player 中以后,必须使用 _leveln 属性来定位这些影片.level0 中的影片为所有随后加载的影片设置帧频、背景色和帧大小。那么level0 必须是独立存在的.也就是不能将其unloadMovie(level0)了.不然播放器中什么也没有了(播放器中右键你会看到"没有加载影片"),而且所要控制的SWF必须提前加载进来)这就要给一个按钮指定两个事件动作.(加载及跳转)

即从1.swf中的某一帧跳转到2.swf中的某一帧(用按钮)(MX版)。

我试过在1.swf中的最后一帧的一个按钮中加上如下AS:

on(realease){
unloadMovie("1.swf");
loadMovie("2.swf",0);

gotoAndPlay("场景 2",1); // 这里指2.swf中的场景2第1帧。}

问题1:unloadMovie("1.swf");这一句无用.(不起任何作用.)

参见:unloadMovie(level/"target")的用法.

问题2:l你是在1.SWF中加载2.SWF.1.SWF就相当于level0,可你按下按钮后就执行LoadMovie("2.swf",0);加载2.swf并设深度为0(也就是使它成为level0),执行到这一句后.在该语句之后的所有语句全部不起作用了.(因为2.swf已经把1.swf替换掉了.).

问题3:影片发布后(编译后),已经不存在场景的概念了.多场景将按照它们在场景面板中的顺序转换成一个长长的时间轴.gotoAndPlay("场景 2",1); 将会被替换成gotoAndPlay(n);(n是根据场景1计算出场景2的实际帧号 如:场景1有18帧.那么场景二个第一帧的帧号为19*/)

因为要控制加载的SWF文件.那么必须在控制前加载它,所以加载与控制跳转.要分为两步来进行.也就是给按钮分配两个事件动作.

on (press) {
loadMovieNum("2.swf", 1);/*加载2.swf,设其深度为1,因为此时1.swf的_level为0,我们要用它来控制加载及跳转.*/
_level0._alpha=0 ;//按下钮后暂时让1.SWF不可见.(为了美观)}
on (release) {
_level1.gotoAndStop(19);//2.swf中的场景2第一帧的实际帧号.
_level0._visible = 0;/*将1.swf内容设为不可见,(可以删除这句看一下可见下的情况),你会发现有什么问题呢?呵呵,是不是1.SWF里的按钮还在起作用?*/
}