Flash 怎么加 进度条?

 我来答
匿名用户
2010-02-11
展开全部
很多朋友在做作品的时候,事先没考虑到Loading的问题,在作品完成想要发布的时候,想到文件有些大,要加一个loadiing下载动画,如果在同一场景前添加loading,作品比较大,托动所有帧比较麻烦,往往一不小心还容易出错,这是初学者经常遇到的问题,这里介绍一种简单的增加场景制作loading的方法,本实例中只显示进度条和下载的百分比。

打开一个你的作品或练习的源文件:

一:增加--场景

选择修改菜单下的场景(shift+F2)打开场景面板,点击场景面板右下角“+”按钮,增加一个“场景2”,这个“场景2”就是我们用来做loadding的场景。托动“场景2”的到“场景1”"上面,这样做的是因为播放动画是按照场景的先后顺序播放的,我们要先播放Loading的场景,请看(图1)

二:增加--图层

在“场景2”中,点时间轴下的增加图层“+”按钮,建立4个图层, 从上到下分别命名为:
action层、进度条层、按钮层、动画层。请看(图2)

三:AC控制层--添加代码:

1.选中action图层,选中第一帧在属性面板<帧标签>处,写上"play"(加上帧标签play),然后窗口--动作(F9)打开动作面板,复制下面的代码并粘贴见(图3)。

// 将电影总字节数赋值给total变量
total = _root.getBytesTotal();
// 将已经下载的字节数赋值给loaded变量
loaded = _root.getBytesLoaded();
// 取整计算已下载的字节数的百分比并赋值给变量load
load = int(loaded/total*100);
// 把已下载的字节数赋值给动态文本变量loadtxt
loadtxt = "loading"+load+"%";
// 进度条同时按百分比数跳转到相应的帧上去;
_root.进度条.gotoAndStop(load);

2.在第6帧(F7)插入一个关空白关键帧,复制下面的代码并粘贴,请看(图4)

//如果下载字节数=总字节数,跳转到6帧停止
if (loaded == total) {
gotoAndStop(6);
//否则跳转到标签名"play"的帧,继续下载
} else {
gotoAndPlay("play");

四:创建进度条影片剪辑:

1.(Ctrl+f8)插入--新建元件--影片剪辑,命名为:"进度条"。 在这个MC上,建立了两层,分别为“边框线”、“填充色”(图5)

2. 在“边框线”层,选择矩形工具,边框及填充颜色自定义,画一个矩形,在属性面板设置:宽:300;高:24;X:-150,Y:-12。在100帧处F5插入普通帧。选中矩形里面的填充色(Ctrl+X)剪切,粘贴到“填充色”层第一帧(Ctrl+Shift+V)选择编辑菜单下的粘贴到当前位置,调整填充色颜色,在100帧处F6插入关键帧,选中第一帧创建“形状”动画,在第一帧将矩形宽改为:3。双击矩形框在属性面板把笔触调整为:2,颜色自定义。请看(图5)

五:进度条层--设置进度条及动态文本:

1.回到场景2中把刚做好的“进度条”MC从库中拖放到“进度条”这一图层的第一帧上,放到合适的位置。然后选中舞台中的“进度条”MC,在属性面板上写上实例名“进度条"。在第6帧按F5插入普通帧。

2.选中“进度条”层,选择文本工具“A”,在舞台合适的位置加入一个动态文本框(文本框是动态的写入程序运算后的百分比结果的),在属性面板上设置文本类型:动态文本,字体:Arial 变量名:loadtxt,单行,字体大小颜色自定义,相关参数请看(图6)

六:按钮层--添加播放按钮:

1.在“按钮层”第6帧按(F7)插入一个空白关键帧,选择窗口菜单下公用库,打开按钮库,托出一个自己喜欢的播放按钮, 摆放到舞台合适位置并调整大小。(本例中选择的是:playback---playback-play)有时间可以自己做一个和你的作品风格统一的按钮。

2.选中舞台上的按钮元件:窗口--动作(F9)打开动作面板,给按钮加上下面的代码:

on (release) {//释放按钮
gotoAndPlay("场景 1", 1);//跳转并播放场景1的第1帧
}

注:这里的场景 1是你要播放的第一个主动画的场景名字,可根据你作品实际情况填写。

七:动画层--放置动画MC:

现在loading就能用了,但为了让等待画面好看可以在“动画层”加入动画MC。我们可以自己做几个动画的MC,或者把场景1作品中比较漂亮的影片剪辑加入到“动画层”,放到合适的位置,也可以自己根据作品的需要去创意。

八:测试保存:

Ctrl+Enter 测试影片。如果作品比较小,在测试的时候loading会瞬间就过去了,告诉大家一个简单看见完整地loading的办法: 在测试影片的时候,注意一定要在Ctrl+Enter以后,选择“查看”菜单下的“显示数据流”就可以慢慢的欣赏loading的全过程了。

(注:没有在 Ctrl+Enter测试状态下,“查看”菜单下面是没有这个选项的。)

参考资料:http://www.7dn.cn/Article/Class38/Class62/200409/Article_2203.html
4
wutsan
2010-02-01 · TA获得超过889个赞
知道小有建树答主
回答量:497
采纳率:0%
帮助的人:467万
展开全部
你的Flash首先必须要有两个场景,一个场景就是显示进度条的,另一个场景就是显示你的主动画的。比如说你给第一个场景命名为“loading 动画”,主动画场景命名为“主动画”。
在“loading 动画”场景中,你要有两个图层,一个为“图层 1”,另一个图层为“图层 2”,新建一个影片剪辑,制作好你的进度条,这个进度条是有100帧的,并且它是一个从一个小长方形到一个大长方形的一个变形,在不同的帧也就对应着不同的长度,制作好这个进度条影片剪辑后,就把这个影片剪辑拖到图层1的第一帧上去就可以了,在图层1 的第二帧添加帧。图层1 就好了,就对图层2处理就可以了,在图层2的第一帧添加动作语句:
a=getBytesTotal();
b=getBytesLoaded();
load = Math.floor(b/a*100);
loader.gotoAndStop(load);//这个loader是你制作好的影片剪辑的实例名
在图层2的第二帧添加关键帧,加入动作:
if(a==b)
gotoAndPlay("主动画",1);
esle
gotoAndPlay(1);
测试一下,你可以看到了,不过你的“loading 动画”场景必需在“主动画”场景上面,而且测试的时候看不到效果,你需要模拟下载才可以看到效果的。祝你成功!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
温文尔雅又挺拔灬大熊猫e
2010-02-01 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:31%
帮助的人:3148万
展开全部
步骤:
1.打开Flash MX 2004,选择矩形工具,在主场景中画出下一个只有边框有矩形,本例该矩形大小为350*16像素。
2.再在主场景中仍用矩形工具画出一个只有填充而无边框的矩形,并按F8键将其转换为影片剪辑(注:其注册点一定要选在该矩形的最左侧),其实例名为bar 。本例该矩形大小为345*11像素。
3.将上述两矩形在主场景中排列好,使边框矩形嵌套填充矩形。
4.在上述两矩形旁边用文字工具拖出一动态文本框,其变量名为bar_per。
至此,准备工作就绪,即建立了两矩形框和一动态文本框,下面准备编写代码。
5.在主场景中,新建一层,选中该层第1帧,按F9键打开动作脚本编辑窗口,输入以下代码:
this.onLoad=function(){
myBytesTotal=_root.getBytesTotal();
}
this.onLoad();
this.onEnterFrame=function(){
myBytesLoaded=_root.getBytesLoaded();
bar_xscale=myBytesLoaded/myBytesTotal*100;
percent=Math.round(bar_xscale);
this.bar._xscale=bar_xscale;
this.bar_per=percent+"%";
if(myBytesLoaded==myBytesTotal){
delete this.onEnterFrame;
_root.nextFrame();
}else{
this.stop();
}
}
6.从主场景时间轴第2帧起制作你的flash影片。

参考资料: http://www.mini88s.com/news_list.asp?id=556

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式