MovieClipLoader类介绍

来源:百度文库 编辑:神马文学网 时间:2024/05/06 05:49:22
(1)*创建MoveiClipLoader对象
Myloader= new MovieClipLoader()
(2)*然后可以定义一系列加载过程中的侦听器.(侦听器具体使用方法见这篇文章)
MovieClipLoader类的侦听器有:
MovieClipLoader.onLoadComplete()
//在使用 MovieClipLoader.loadClip() 加载的文件已完全下载时调用。
MovieClipLoader.onLoadError()
//在使用 MovieClipLoader.loadClip() 加载的文件未能加载时调用。
MovieClipLoader.onLoadInit()
//当执行加载的剪辑的第一帧上的动作时调用。
MovieClipLoader.onLoadProgress()
//加载过程中每当将加载的内容写入磁盘时调用。
MovieClipLoader.onLoadStart()
//当对 MovieClipLoader.loadClip() 的调用已成功开始下载文件时调用。
(3)*最后用Myloader.loadClip()方法加载需要加载的东东~
Myloader.loadClip("url", target/level )
//可以加载到目标影片剪辑或层级
(4)*MovieClipLoader还有一些方法,~
getProgress()方法相对比较重要,她返回的是一个对象,这个对象有以下两个属性
.bytesLoaded //已下载的字节数
.bytesTotal//总字节数
也就是说,这个getProgress方法整合了这两个属性
其他一些方法见下表
MovieClipLoader.addListener()
//注册一个对象,以便在调用 MovieClipLoader 事件处理函数时接收通知。
MovieClipLoader.getProgress()
//返回使用 MovieClipLoader.loadClip() 正加载的文件的已加载字节数和该文件的总字节数。
MovieClipLoader.loadClip()
//在播放原始影片时,将 SWF 或 JPEG 文件加载到 Flash Player 中的影片剪辑中。
MovieClipLoader.removeListener()
//删除已使用 MovieClipLoader.addListener() 注册的对象。
MovieClipLoader.unloadClip()
//删除已通过 MovieClipLoader.loadClip() 加载的影片剪辑。
例子:
on(release){ //当鼠标点击时
var mcl= new MovieClipLoader(); //定义新的MovieClipLoader对象~
var listener = new Object(); //定义一个新的对象,用来监听load进程
listener.onLoadProgress=function(target,loadedBytes,totalBytes ){ //onloadprogress加载过程中每当将加载的内容写入磁盘时调用
//其中loadedBytes是已经下载的字节,totalBytes是正在加在的文件的总字节数
x=loadedBytes
y=totalBytes
//trace(x+ " bytes已经load了");
//trace(totalBytes + " bytes需要load");
d=x*100/y //计算已经载入的百分比
_root.p._xscale=d //设置进度条的缩放
//if(d==100){ 如果不想使载入的按钮和进度条显示,使用该语句
//_root.p._visible=false
//_root.anniu._visible=false
//}
}
listener.onLoadInit = function(target) //当执行加载的剪辑的第一帧上的动作时调用
{
if(d<100){ //如果没有加载完成,不要播放
target.stop();
} else { //加载完成,可以设置加载的swf文件开始播放的帧数
target.gotoAndPlay(2);
}
target._width=400 //设置加载的影片的大小及其位置等相关属性
target._height=350
target._x=25
target._y=50
}
mcl.addListener(listener); //注册一个新的监听对象~
mcl.loadClip("http://asp5.6to23.com/wlwy/flash/qfsh.swf",1‘‘‘‘ target="_blank" >http://asp5.6to23.com/wlwy/flash/qfsh.swf",1); //使用自定义的对象,加载swf文件,可以修改哦~ }
//定义一个loader
MyLoader = new MovieClipLoader();
//这个不用说了吧
MyListener = new Object();
//load完后对mc的初始化,这里我随便设定了一个值_x=0
MyListener.onLoadInit=function(Target_MC){
Target_MC._x=0;
trace (Target_MC._x);
}
//load过程中执的语句,也就是方便我们显示load百分比的了
MyListener.onLoadProgress = function(Target_MC, loadedBytes, totalBytes) {
_root.msg2.text = loadedBytes+"---->"+totalBytes;
};
//load开始时执行的语句,也就是告诉你,开始load了(废话)
MyListener.onLoadStart = function() {
_root.msg.text = "Load begin";
};
//load出错时执行的语句
MyListener.onLoadError = function() {
_root.msg.text = "Sorry! load error";
};
//load完成执行的语句
MyListener.onLoadComplete = function() {
trace ("c");
_root.msg.text = "load completed";
//这里我自己加的,因为在本地的时候load太快,所以执行不了play(执行play的时候,flash认为还没调入,
//在网上测试的时候没这问题,如果你发现这里的语句没执行,你不妨试试
function lok(){
_root.loadl.play();
clearInterval(rok);
}
rok=setInterval(lok,1000);
};
//绑定侦听
MyLoader.addListener(MyListener);
//这些不用说了吧了
l1.onPress = function() {
MyLoader.loadClip("1.swf", _root.loadl);
};
l2.onPress = function() {
MyLoader.loadClip("2.swf", _root.loadl);
};