|
首页 | 名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
前言:网络中的swf影片是可以实现边下载边播放的,由于受到当前网络传输的制约,对于大容量的影片,这种实时播放并不理想。为避免受众尴尬的等待,flash制作人员往往设计一个加载(loading)的画面,等影片的全部字节下载到本地后再播放,从而保证影片的播放质量.本文将介绍一种较为标准的loading制作方式。 步骤: 至此,预备工作就绪,即建立了两矩形框和一动态文本框,下面预备编写代码。 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影片。 注解: this.onLoad=function(){
myBytesTotal=_root.getBytesTotal(); } 此段代码是指,当影片剪辑(本例指两矩形和一动态文本框所存在的主场景)加载时,读取主时间轴存在的所有元素的总字节数并赋值给变量myBytesTotal。 ② this.onLoad();
flash事件处理函数MovieClip.onLoad=function(){…}有些希奇,其中设置的代码,若不在后面加上this.onLoad();,这些代码并不能执行,因此加上这一句以便这些代码得以执行。 ③ ④ ⑤ 拓展: 2.“已用时间和剩余时间”的代码设计 timeLoaded=Math.round(t/1000);
timeRemain=Math.round(timeLoaded*(myBytesTotal-myBytesLoaded)/myBytesLoaded); timeRemain=Math.round(timeRemain/60)+":"+Math.round(timeRemain%60); timeLoaded=Math.round(timeLoaded/60)+":"+Math.round(timeLoaded%60); mytimes="已用时间"+timeLoaded+" "+"剩余时间"+timeRemain; 注:若“下载速度”的代码没有设计,则上述代码前应追加代码 t=getTimer(); 拓展后主场景代码层第1帧的全部代码如下: 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+"%"; t=getTimer(); rate= "下载速度:" + Math.round(myBytesLoaded/t * 100)/100 + " K/s"; timeLoaded=Math.round(t/1000); timeRemain=Math.round(timeLoaded*(myBytesTotal-myBytesLoaded)/myBytesLoaded); timeRemain=Math.round(timeRemain/60)+":"+Math.round(timeRemain%60); timeLoaded=Math.round(timeLoaded/60)+":"+Math.round(timeLoaded%60); mytimes="已用时间"+timeLoaded+" "+"剩余时间"+timeRemain; if(myBytesLoaded==myBytesTotal){ delete this.onEnterFrame; _root.nextFrame(); }else{ this.stop(); } } 效果图如下: 返回类别: Flash教程 上一教程: Flash制作逼真的书法动画效果 下一教程: Flash MX 2004实例制作视频教程:手机浮动广告5 您可以阅读与"Flash 实用编程百例解读三"相关的教程: · Flash MX实用编程百例解读一 · Flash 实用编程百例解读 · Flash实用编程四---下雪动画的制作 · Flash实用编程五---下雨动画的制作 · 入门级技巧:FLASH 编程心得 |
快精灵印艺坊 版权所有 | 首页会员中心在线印刷在线编辑付款方式索取样品设计指南连锁门店 |