前断时间碰到一个问题,用loading监视从外部调入的Jpeg(swf)的进度,看字典查到了,把过程拿出来分享,希望对碰到同样问题的朋友有所帮助,谢谢!第一次写类试的分享,错漏在所难免,盼谅!
效果:
[全屏欣赏]
源文件:
点击浏览该文件
建立一个空的mc,右击mc,加上链接名为loader!如图
此主题相关图片如下:
编辑这个mc,从组件中拉进一个组件ProgressBar,调整它的属性如图:
此主题相关图片如下:
新建一层,在层中写入下列代码:
myLoader = new MovieClipLoader();//创建一个叫myLoader的新的MovieClipLoader函数
myListener = new Object();//创建一个叫myListener的新项目
myListener.onloadStart = function(clip){pbar.label = "Now Loading:" + clip;};//调用刚才创建的新项目的onloadStart函数.并确定开始下载时的动作是"pbar.label = "Now Loading:" + clip;};"
myListener.onLoadProgress = function(clip,bytesLoaded,bytesTotal){
var percentLoaded = int(100*(bytesLoaded/bytesTotal))//调用新项目中的onLoadProgress函数,得到两个值,一个是下载值,一个是源文件大小,通过100*下载值/源文件大小得到下载比率
pbar.setProgress(bytesLoaded,bytesTotal);};把下载值于源文件大小值代入pbar的属性中
myLoader.addListener(myListener);//不明白:)
myLoader.loadClip("URL",_root.target_mc)//myLoader粘贴URL中的文件!
假如想在下载完成之后删除loading,可再写上:
myListener.onLoadComplete = function(clip){removeMovieClip(_root.loader1);}//在myListener项目里调用onLoadComplete函数,确定下载完毕后的动作是删除在场景里的名叫loader1的剪辑!
再做一个空mc,n=target_mc,装Jpeg(swf)用的
建立一个新按钮,再拉到场景,粘贴以下代码:
on(release){
attachMovie("loader","loader1",1);//当按钮松开的时候,帮我从库中调进一个链接名为loader的mc,重命名为loader1,深度为1
loader1._x=600;//把刚刚那个mc出现的x坐标调整为600
loader1._y=500;}//同上,调整y坐标!
完成,思路,用一个按钮调用一个库里的mc,这个mc用来粘贴你的目标Jpeg或swf,然后再做一个mc,用来监察你目标Jpeg或swf的进度!
在建设全flash网站的过程中,难以避免由于flash体积过大,或者要用到的图片体积过大而影响到下载速度,把个别元件从网上URL得到,能有效避免用户长时间load整个swf文件!
最后,我很菜的翻译也是凭估计,可能不准确,虚心聆听高手指导中!