带进度条的Loading制作

| 网站首页 | 电子厨务 | 饮食信息 | 电子图库 | 厨客留言 | 520吃论坛 |

| 加入收藏
| 设为首页
| 联系站长

| 您现在的位置： 520吃 >> 电子厨务 >> 电脑基础 >> 动画制作 >> 文章正文

带进度条的Loading制作 | ★★★ | 【字体：小 大】

带进度条的Loading制作
作者：佚名 文章来源：本站原创 点击数： 更新时间：2006-9-6

Loading的制作已经是个比较老的话题了。但是最近仍然不断有人问这个问题，毕竟什么时候都有初学者嘛。换个角度看，这也说明我们的闪客队伍是在不断涨大，倒是个可喜的现象。也给了我动力，来写这篇文章，给入门者提供一个较为详细的教程。好，我们开始。
Loading一般可以用两帧来制作，放在动画的最前面。如果一个比较大的动画已经做好了，再插入帧太麻烦，也可以增加一个场景，专门放Loading，这个我们一会儿再讨论。我们先来看看最基本的制作步骤。
打开Flash MX（我这里以Flash MX做示例，不过其中的编程语句全部都是flash5支持的），新建文件，设定好场景尺寸、背景颜色和帧速。先做一个带有“Loading...”字样的MC（Movie Clip 以下同）。我这里做了个简单的文字闪烁，也是最常用到的一种效果。
把它放入场景的第1帧。在它下面画一个矩形框，里面画个没有边线的矩形填充作为将来的进度条。
选择这个矩形填充，按F8转为符号。
给它命个名，我这里是“jdTiao”。类型选Movie Clip，如果选Graphic，将来在场景中就不能对它命名和进行Action控制（这也是Movie Clip和Graphic的主要区别之一，而通过会动还是不会动来定符号类型则是初学者最易走进的误区，其实MC和Graphic都可以是动画，也都可以是静止图片）。最后需要注意的一点，看见Registrati选项了吗？它旁边有9个小方框，这是用来确定符号的中心点的，我们这里选择左边中间的那个点。你可以试试选择中心点最终会是什么效果。多做这样的尝试是个好习惯，能够帮助你加深理解。经验从哪里来？就是从错误中来！
在场景中选择进度条，在属性面板中把它命名为“tiao”。注意，这是实例名，要和符号名（jdTiao）区别开，用action控制时，使用的是实例名。这是个初学者易犯的一个错误。
在进度条的右边创建一个动态文本，宽度为3个字母，设置它的属性：变量名为“loaded”，对齐方式为居左。紧接其后，创建一个静态文本，输入一个百分号“%”。
现在场景编辑基本完成，按F6插入一个关键帧，我们需要2个帧来进行循环。下面开始action的编写。
第1帧：
loaded = Math.round(getBytesLoaded()/getBytesTotal()*100);
setProperty("_root.tiao", _xscale, loaded);
if (loaded>==100) {
gotoAndPlay(3);
}
我来解释一下这几个语句。
loaded = Math.round(getBytesLoaded()/getBytesTotal()*100);
这是给变量loaded赋值的语句。“loaded”是什么？还记得我们刚才创建的动态文本吗？我们给它设置的变量名就是“loaded”，这样，在动画发布后，动态文本框中显示的内容就是loaded的值。也就是说，只要按我们的需要动态的给loaded赋值，场景中就会即时的显示出这些数据。这里想要显示的是已经下载的百分比，看看如何计算：
getBytesLoaded() 获取已经下载多少字节的函数；
getBytesTotal() 获取动画共有多少字节的函数；
它俩的比值再乘上100，就得到了下载的百分比；
Math.round() 它的作用是把数值四舍五入，这样就把百分比进行了取整。
setProperty("_root.tiao", _xscale, loaded);
这一句用来控制进度条的显示。setProperty()是设置实例属性的，大家应该很熟悉了。
Property一栏选_xscale，因为我们想控制的是进度条的宽度。
value一栏填入loaded，对，就是刚才计算出的百分比。记得把Expression选中哟。提示：输入数值常量或变量名，一定要勾选Expression，不然的话，程序就只会把它当成“loaded”这几个字母。这也是初学者易犯的一个错误。
输入Target栏时，可以利用下面的目标路径工具。点击之后，出来一个对话框，场景中已经命名的实例就会一目了然。这样做一般就不会出错了。提示：Notation的选项，Dots是点语法，flash 5之后开始采用；Slashes是斜杠语法，flash 4的语法，不推荐使用了。Mode选项，Relative是相对路径，Absolute是绝对路径，我个人的意见是，初学时先用绝对路径。
if (loaded==100) {
gotoAndPlay(3);
}
这个判断语句很好理解，如果载入完毕（loaded==100）,就跳转到第3帧开始播放主动画。不过还是有两点需要注意。第一，loaded==100，这个“==”千万别写成“=”，loaded=100就成了赋值语句了，100是个正值，作逻辑判断就是真（True），这个判断语句就没什么意义了，gotoAndPlay(3)一定会被执行。
第二，我在文章开始提到的，想把Loading单独放在一个场景怎么办？比如Loading在第1场景（Scene 1），主动画在第2场景（Scene 2），这时只要把gotoAndPlay()语句稍作改动就行了，如图所示：
第1帧制作完成，开始第2帧。这帧只有一个语句：
gotoAndPlay(1);
就是返回第1帧，构成一个循环。
至此，Loading制作全部完成。把它加入你的动画测试一下吧。看不到Loading效果？在你的Flash MX里按两次Ctrl+Enter试试。

最新热点

最新推荐

相关文章

Flash MX制作堆雪效果
PowerPoint中插入Flash动画的
FLASH MX制作动画卡通人物
FLASH《一树梨花》旋转特效
Flash实例之电子日历
鼠标效果系列教程—游动的鱼
FLASH弹出窗口
实用的Flash技巧心得
FLASH动画 命令大集合
Flash MX的10个新功能

文章录入：admin 责任编辑：admin

- 上一篇文章： FLASH弹出窗口
- 下一篇文章： 鼠标效果系列教程—游动的鱼

【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】

网友评论：（只显示最新10条。评论内容只代表网友观点，与本站立场无关！）

服务热线:(0)15972979128 客服ＱＱ：２１４８８１３９ Email:summy@520chi.com

设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告
Copyright (C) 2006 520chi.com, All Rights Reserved 版权所有 520吃网络 鄂ICP证B2-20060003号 如有意见请与我们联系 Powered by 520吃网络平台 免责申明：520吃网络(http://520chi.com)上的所有提供下载的软件和资源均来源于网络，为软件或程序作者提供和网友推荐收集整理而来，仅供学习和研究使用。如有侵犯你的版权，请立即联系我们，本站将在3个工作日内删除。