📄 qloader.as
字号:
/**
* Description here..
* @author Default
* @version 0.1
*/
package crlclr {
import crlclr.data.LoaderInfor;
import crlclr.Event.QProgressEvent;
import fl.controls.NumericStepper;
import flash.display.Loader;
import flash.events.*;
import flash.events.EventDispatcher;
import flash.net.ObjectEncoding;
import flash.net.URLRequest;
public class QLoader extends EventDispatcher {
private static var ONSTART:String="onStart";
private static var Instance:QLoader=new QLoader();
private var loading:Boolean=false;
private var loadItem:Array;
private var loader:Loader;
private var currentItem:*;
public function QLoader(){
if(Instance!=null){
throw new Error("单件");
}
init();
}
private function init(){
this.loadItem=new Array();
loader=new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT,initHander);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS.ProgressHander);
}
public function addItem(obj:*,first:Boolean){
this.loadItem.unshift(obj);
if(!this.loading){
this.Start();
}
}
private function Start(){
var e:Event=new Event(QLoader.ONSTART)
this.dispatchEvent(e);
}
private function loadNextItem():Boolean{
if(this.Length>0){
this.currentItem=this.loadItem.pop();
this.load(this.currentItem)
}
}
public function load(obj:*):void{
var path="";
var urlRequest:URLRequest=new URLRequest(path);
this.loader.load(urlRequest);
}
public static function getInstance():QLoader{
return Instance;
}
public function get Length():int{
return this.loadItem.length;
}
private function initHander(event:Event){
}
private function ProgressHander(event:ProgressEvent){
var obj:Object=new Object();
obj.loaded:Number=event.bytesLoaded;
obj.total:Number=event.bytesTotal;
obj.avg:int=int(loaded/total*100);
var e:QProgressEvent=new QProgressEvent(QProgressEvent.PROGRESS,obj);
this.dispatchEvent(e)
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -