AS3 使用SWF进度条 显示加载
我想要在加载的时候,网页上有一个进度条。但是不想用,使用Graphics函数画图,我自己在FlashCS5中画了一个进度条。怎么把这个进度条的播放,跟加载想关联?...
我想要在加载的时候,网页上有一个 进度条。但是不想用,使用 Graphics 函数画图,
我自己在 Flash CS5 中 画了一个 进度条。怎么把这个进度条的播放,跟加载想关联? 展开
我自己在 Flash CS5 中 画了一个 进度条。怎么把这个进度条的播放,跟加载想关联? 展开
2个回答
2011-09-22
展开全部
两种方法:
一:为加外SWF文件广播一个事件,在其播放完之后加,比如:
dispatcherEvent(new Event("over"));
然后再load之后,侦听这个事件,一旦侦听到,说明就播放完了,我做的一些项目就是这么做的,但如果这个swf文件不是你做的,或者没有源文件,就不能用这个方法了.
二:可以获取加载的swf文件的totalFrames,然后再判断,如:
currentFrame==totalFrames
一:为加外SWF文件广播一个事件,在其播放完之后加,比如:
dispatcherEvent(new Event("over"));
然后再load之后,侦听这个事件,一旦侦听到,说明就播放完了,我做的一些项目就是这么做的,但如果这个swf文件不是你做的,或者没有源文件,就不能用这个方法了.
二:可以获取加载的swf文件的totalFrames,然后再判断,如:
currentFrame==totalFrames
展开全部
var myLoader:Loader= new Loader();
myLoader.load(new URLRequest("*.jpg"));
myLoader.contentLoaderInfo.addEventListener(Event.OPEN,showPreloader);
myLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,showProgress);
myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,showLoadResult);
function showPreloader(evt:Event):void {
//======开始预下载时调度======
}
function showProgress(evt:ProgressEvent):void {
//======下载过程中调度======
var percent:Number = Math.round((e.bytesLoaded/e.bytesTotal)*100);
//trace(percent);
Load_txt.text="Loading..."+percent+"%";
Line.scaleX=percent/100;
}
function showLoadResult(evt:Event):void {
//======加载完成后调度======
//移除loading和侦听器,释放内存
myLoader.contentLoaderInfo.removeEventListener(Event.OPEN,showPreloader);
myLoader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS,showProgress);
myLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,showLoadResult);
}
myLoader.load(new URLRequest("*.jpg"));
myLoader.contentLoaderInfo.addEventListener(Event.OPEN,showPreloader);
myLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,showProgress);
myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,showLoadResult);
function showPreloader(evt:Event):void {
//======开始预下载时调度======
}
function showProgress(evt:ProgressEvent):void {
//======下载过程中调度======
var percent:Number = Math.round((e.bytesLoaded/e.bytesTotal)*100);
//trace(percent);
Load_txt.text="Loading..."+percent+"%";
Line.scaleX=percent/100;
}
function showLoadResult(evt:Event):void {
//======加载完成后调度======
//移除loading和侦听器,释放内存
myLoader.contentLoaderInfo.removeEventListener(Event.OPEN,showPreloader);
myLoader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS,showProgress);
myLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE,showLoadResult);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询