|
因为在设计的时候突然要载入多个图片, 所以顺便做了个教程放上来和大家分享... 也许就是很多人想要做的, 当中方法可以随自行喜欢设定
作者 : Super-Tomato
步骤 1 :
建立个进度条, 从第一帧宽度为1 到 第100帧宽度为100..这个不用教应该会了, 然后设定为mc, 在库中设定ID, 如图 :
步骤 2 :
在第一帧输入以下代码 :
var a = new Array("http://www.super-tomato.com/pic_file/yuan.jpg", "http://www.super-tomato.com/pic_file/steven.jpg", "http://www.super-tomato.com/pic_file/girl.jpg", "http://www.super-tomato.com/pic_file/boy.jpg"); //这里是所要载入图片的路径
var i = 0;
onEnterFrame = function() {
if (i<a.length) { //循环得到图片路径的数量
m = createEmptyMovieClip("image"+i, i); //建立空的MC
m_load = m.createEmptyMovieClip("pic", 0); //空MC当中再建立个MC载入图片
m_preload = m.attachMovie("loader", "loader", 1); //空MC当中摆放进度条, 从库中取得
m_preload._x = 100; //设定进度条的x坐标, 以不会和图片重叠
m_preload._y = 40; //同上
m._y = i*90; //空MC的位置
m_load.loadMovie(a[i ]); //开始载入所指定的图片
m.onEnterFrame = function() { //循环取得所载入的进度
preloader(this);
};
} else { //当已经没有指定图片要载入的时候
delete i; //删除变量i, 以释放内存空间
delete onEnterFrame; //删除循环
}
i++;
};
function preloader(target) {
mc = target.pic;
var percent = int((mc.getBytesLoaded()/mc.getBytesTotal())*100); //计算取得图片载入的进度
target.loader.gotoAndStop(percent); //进度条所显示所载入的进度
if(percent >= 100) { //当完全载入图片后, 删除侦测图片载入进度的循环
delete target.onEnterFrame;
}
}
步骤 3 :
完成
例子: Flash: http://www.flash8.net/bbs/UploadFile/2004-7/20047109254343.swf
[ Last edited by super-tomato on 22-12-2004 at 11:35 AM ] |
|