收藏本站 | 站点地图 | 繁體中文
沭阳乐园
您现在的位置: 沐阳乐园 >> 文章中心 >> 网络教程 >> 动画实例 >> 正文
完美loding制作         
完美loding制作
作者:lover_13… 文章来源:闪吧 点击数:1179 更新时间:2010-12-30 4:02:47

当然这里的"完美loding"是指londing程序的内部效果而不是外在的美观。

不多说了,这篇帖子是专门为菜鸟而写的,虽然关于"londing程序"制作介绍的文章已经不止唯一了,但是还有许多的新手对于"londing程序"还是有很多疑问,特别是对自己做的"londing"为什么总是在屏幕上一闪而过,有的甚至看不到"londing",当然,这曾经也是我自己的一个疑问。现在我就想大家介绍一个自己测试过N次的一个"双重加载+可视化加载(可以看到londing程序加载的过程)"在主影片上只占一帧的完美londing程序。

首先,我们按CTRL+F8新建一个影片剪辑名为"londing",最好在对其方式上选择"中心对其"。这时,我们就开始制作"londing"的Action,在第一层(名为Action)的第一帧输入以下代码:

_parent.stop();//当前影片的父影片剪辑,停止播放

var fa;//声明局部变量 fa

var fb;//声明局部变量 fb

var fc;//声明局部变量 fc

fc = 0;//使变量fc赋予值"0"

var ga;//同上 声明局部变量 ga

var gb;//变量 gb

var gc;//变量 gc

gc = 0;//使变量gc赋予值"0"

this.onEnterFrame = function() {

};//使当前对象(上面的变量),进入帧时开始调用,再次声明定义的函数

(复制以上代码到第一帧即可)

程序讲解:上面代码的主要作用是让影片认识我们定义的函数,在影片进入当前剪辑"londing"时使用。下一步就是输入londing程序的主要代码了,单击Action层按F5,在新建的一帧中输入以下代码:

fa = _parent._framesloaded;//使变量fa赋予值_framesloaded(影片已加载的帧数)

fb = _parent._totalframes;//使变量fb赋予值_totalframes(影片总帧数)

fc = fc+Math.round((fa/fb*100-fc)/10000000000000000000000000+1);//获取影片加载帧数的百分比

tiao1._xscale = (fc);//按加载帧数的百分比来缩放tiao1的宽

text2 ="准备加载影片字节中...";//在动态文本筐里显示"..."中的文字

text1 ="加载影片帧中...    "+(fc)+"%";//把加载帧数的百分比在text1中显示,并在后面加个%

if (fc>=100) {//如果影片加载帧数的百分比达到100%,则开始执行以下代码

text1 = "完成";//在动态文本text1中显示"完成"

ga = _parent.getBytesLoaded();//使变量ga赋予值getBytesLoaded()(影片已加载的字节数)

gb = _parent.getBytesTotal();//使变量gb赋予值getBytesTotal()(影片总字节数)

gc = gc+Math.round((ga/gb*100-gc)/10000000000000000000000000+1);//获取影片加载字节数的百分比

tiao2._xscale = (gc);//按加字节的百分比来缩放tiao2的宽

text2 = "加载影片字节中..."+(gc)+"%";//把加字节数的百分比在text2中显示,并在后面加个%

if (gc>=100) {//如果影片加字节数的百分比达到100%,则开始执行以下代码

_root.gotoAndStop(2);//使上一级影片转到第2帧并停止播放影片

this.stop();使当前级停止播放影片

}

}

程序讲解:londing程序制作的方式有两种,一种是帧加载第二种就是影片字节的加载,在以上代码中已经都介绍的很清楚了。而上面的程序已经把两种加载的方式都融合到其中了,因此我可以大胆的说它是完美的londing程序。在影片帧加载完毕后,再开始加载影片的字节数。上面代码中的"if (条件) {执行代码}"就是一个条件语句,它就是使当满足一个条件后,如if (fc>=100) 加载帧数达到百分之百后才开始执行另一段代码。其作用主要在于使两段代码可以分开执行,如果取消了"if (条件) {执行代码}"FLASH就会让两段代码同时执行了。

还有,有些新手对于"_root与this"的用法不是很清楚,因此在这里也有必要提一下它们的用法与意义。若在一个元件中的按钮中加入"on(press){_root.gotoAndStop(5)}",它的意思就是指在单击按钮后主影片(最上一层)转到第5帧并停止。若在一个元件中的按钮中加入"on(press){this.gotoAndStop(5)}",控制的就是按钮在当前级影片剪辑。再插一句,灵活的运用"_root与this",会让自己更好的控制影片。

完成Action层的最后一步,让我们再次单击此层并按F5。在Action层的第三帧中添加代码:

gotoAndPlay(2);

好了,现在可以开始制作londing程序的可视部分了。

新建一层,名为TEXT。在TEXT层中新建两个动态文本筐,字体大小设为14。在一个文本筐的属性中设置变量为"text1"宽为153,在另一个动态文本筐,设置变量为"text2"宽为153。在对其中点击"垂直对其"再新建一层,名为填充筐。在这层中选择"矩型工具(R)",笔触颜色为黑(可自选)填充颜色为黄色(可自选)拖出两个矩型,宽为150高为12。使"text1"与一个矩型水平中对其,使"text2"与另一个矩型水平中对其。单击两个矩型中的颜色区,转换为影片剪辑为左中对其,设置与"text1"水平中对其的矩型实例名为"tiao1",设置与"text2"水平中对其的矩型实例名为"tiao2"。

最后把制作好的londing剪辑从库中拖出,放到主场景的任意位置。好了现在londing程序可以说已经是完成了,但是在按CTRL+ENTER测试的时候你却会发现,在两个tiao的缩放上出现了一些问题,如图,当然解决的方法也很简单。

说明一下,我在制作矩型时是把外筐与tiao分层了,tiao1与tiao2也分了层,这样是为了更方便的来制作tiao。现在我们把tiao2属性中的宽设置为1.0,与tiao2外筐的最左侧对其。

新件一层,名为遮照。复制实例tiao2,粘贴到遮照层,选择"粘贴到当前位置"。右击遮照层,选择右键菜单中的"遮照层"。好了现在londing程序的制作已经大工告成,当你再测试的时候,所有问题都已经解决。

当然,如果你觉得一步一步的制作有些麻烦,你只需要将原程序(FLA)文件中lond层的第一帧,复制到你影片的第一帧即可。

注:此方法可适用于任何影片。

--------------------------------------------------------------------

请点击以下链接学习各种不同的制作方法:

新手必看:Loading制作    更加简单的Loading制作方法    纯AS的Loading...很实用   精确loading的制作

纯AS的Loading预载画面效果四例    标准的 loading 制作方法    增加场景制作Loading教程   

带进度条的Loading制作   纯AS的Loading效果四例     Flash加载进度条教程    进度条控制影片播放

Flash进度条加载的显示    完美loding制作    Flash制作好看的影片指导进度条

文章录入:晴天    责任编辑:清水洗尘 
  • 上一篇文章:
  • 下一篇文章:
  • 【字体: 】 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    广告招商
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    ::发表评论::
     姓 名:
     评 分: 1分 2分 3分 4分 5分
     评论内容:
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用本网服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  • 广告招商
    文章 下载 图片 文字广告
    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登陆

    备案/许可证编号: 闽ICP备16020960号-1号 域名创建于2016年8月
    版权: 沐阳乐园 All Rights Reserved 站长:张萍 邮箱:381415887@qq.com 联系QQ:联系站长