返回首页
当前位置: 主页 > 视频动画 > Flash教程 >

flash判断外部加载文件下载的LOADING

时间:2014-10-02 22:55来源:电脑教程学习网 www.etwiki.cn 编辑:admin

有时候做一个站点的时候,常常需要从外部LOADMOVE/LOADMOVENUM来加载一个外部的SWF,而在每个外部的SWF的源文上面都加一个Loading不仅累,而且适用范围不广(如:我要加载一个只有SWF而没有源文的或者仅仅一张图片等等,就无法使用添加LOADING的方法

  当然,你说要把图片放在一个SWF里,那么当我无语……),以下给出一个方法,可以实时创建进度条,并且关联读取外部文件,载入完毕后自动播放/显示外部文件于当前FLASH的方法:

程序代码:

this.createEmptyMovieClip("preloader", 10000); //创建一个名字为Preloader,有1000帧的空MC
this.createEmptyMovieClip("box", 10001); //创建创建一个名字为Box,有10001帧的的空MC
box._visible = 0; //将刚刚创建的Box这个MC是否可见为否
box.loadMovie("ling.swf "); //Box载入外部SWF文件ling.swf(当然可以载入图片,自己做做就明白)
//以下代码是判断 ling.swf 是否已经完全加载。
preloader.onEnterFrame = function() { //当Preloader MC载入帧时执行AS:
var l = box.getBytesLoaded(); //给l赋值,获得Box这个MC已经载入多少的值(由于上面Box已经载入了一个外部文件Ling.swf,因此这里就是获得Ling.swf的已经载入多少的值)
var t = box.getBytesTotal(); //给t赋值,获得Box这个MC的的总大小(也就是Ling.swf的大小)
var getPercent = l/t; //赋值getPercent,值为Box已经载入的大小/Box的总大小
loadText = Math.round(getPercent*100)+"%completed"; //将getPercent的值乘以100,将他的值向上或向下舍入为最接近的整数并返回值+%Completed的值赋给loadText,比如Math.round(getPercent*100)的值是55,那么就是loadText的值就是55%Completed,后面的Completed你可以改成中文(如:已载入)
if (l>0 && l>=t) { //如果l的值大于0,并且l大于等于t
box._visible = 1; //Box是否可见为可见,以后所有的对Box对象的操作,都是对从外部载入的Line.swf的操作
box._x = 32; //设置Box X坐标的位置设置为场景坐标X为32的位置
box._y = 50; //设置Box Y坐标的位置设置为场景坐标Y为50的位置
box._height = 237; //设置Box的高为237(符合你载入的外部文件的高)
box._width = 243; //设置Box的宽为243(符合你载入的外部文件的宽)
delete this.onEnterFrame; //删除当前载入帧的动作
}
}
}
this.createEmptyMovieClip("preloader", 10000); //创建一个名字为Preloader,有1000帧的空MC
this.createEmptyMovieClip("box", 10001); //创建创建一个名字为Box,有10001帧的的空MC
box._visible = 0; //将刚刚创建的Box这个MC是否可见为否
box.loadMovie("ling.swf "); //Box载入外部SWF文件ling.swf(当然可以载入图片,自己做做就明白)
//以下代码是判断 ling.swf 是否已经完全加载。
preloader.onEnterFrame = function() { //当Preloader MC载入帧时执行AS:
var l = box.getBytesLoaded(); //给l赋值,获得Box这个MC已经载入多少的值(由于上面Box已经载入了一个外部文件Ling.swf,因此这里就是获得Ling.swf的已经载入多少的值)
var t = box.getBytesTotal(); //给t赋值,获得Box这个MC的的总大小(也就是Ling.swf的大小)
var getPercent = l/t; //赋值getPercent,值为Box已经载入的大小/Box的总大小
loadText = Math.round(getPercent*100)+"%completed"; //将getPercent的值乘以100,将他的值向上或向下舍入为最接近的整数并返回值+%Completed的值赋给loadText,比如Math.round(getPercent*100)的值是55,那么就是loadText的值就是55%Completed,后面的Completed你可以改成中文(如:已载入)
if (l>0 && l>=t) { //如果l的值大于0,并且l大于等于t
box._visible = 1; //Box是否可见为可见,以后所有的对Box对象的操作,都是对从外部载入的Line.swf的操作
box._x = 32; //设置Box X坐标的位置设置为场景坐标X为32的位置
box._y = 50; //设置Box Y坐标的位置设置为场景坐标Y为50的位置
box._height = 237; //设置Box的高为237(符合你载入的外部文件的高)
box._width = 243; //设置Box的宽为243(符合你载入的外部文件的宽)
delete this.onEnterFrame; //删除当前载入帧的动作
}
}

------分隔线----------------------------
标签(Tag):flash flash实例教程 flash源代码 flash基础教程 flash技巧
------分隔线----------------------------
推荐内容
猜你感兴趣