22/11/2007import phoxer.Loaders; var ld:Loaders= new Loaders();<br> ld.backProgress=onProgress; ld.backComplete=onComplete; ld.cancelar=true; ld.useUnloadAndStop=true; function onProgress(num:Number):void{ //aqui se puede leer el progreso de la carga } function onComplete(ob:Object,ld:Loader):void{ //aqui recivimos dos parametros //ob: el objeto que contiene el loader. //ld: el objeto loader. } //Asi se cargan los contenidos ld.setLoad(this,"contenido_externo.swf");
/** LOADER by .:[PHOXER]:. http://www.phoxer.com v 4.4; */ package phoxer{ import flash.display.Loader; import flash.events.Event; import flash.events.IEventDispatcher; import flash.events.IOErrorEvent; import flash.events.ProgressEvent; import flash.net.URLRequest; public class Loaders{ private var clip:Object; private var loader:Loader; private var fileurl:URLRequest; private var isLoading:Boolean=false; public var backInit:Function=null; public var backProgress:Function=null; public var backComplete:Function=null; public var backError:Function=null; public var cancelar:Boolean=false; public var isVisible:Boolean=true; public var useUnloadAndStop:Boolean=false; public var useGarbageColector:Boolean=true; public function setLoad(cont:Object,url:String,nx:int=0,ny:int=0):void{ clip=cont; //opts if(cancelar){ if(isLoading){ cancelLoad(); } } loader = new Loader(); fileurl = new URLRequest(url); loader.load(fileurl); loader.x=nx; loader.y=ny; loader.visible=isVisible; configurarListeners(loader.contentLoaderInfo); clip.addChild(loader); isLoading=true; } public function cancelLoad():void { if (isLoading) { isLoading=false; loader.close(); unload(); } } public function removeLoader():void{ if(loader!=null && !isLoading){ unload(); } } private function unload():void{ if(useUnloadAndStop){ try { loader.unloadAndStop(useGarbageColector); } catch (e:Error) { loader.unload(); } }else{ loader.unload(); } } public function loading():Boolean{ return isLoading; } private function configurarListeners(evnt:IEventDispatcher):void { if (backInit!=null) { evnt.addEventListener(Event.OPEN, onStart,false,0,true); } if (backProgress!=null) { evnt.addEventListener(ProgressEvent.PROGRESS, onProgress,false,0,true); } if(backComplete!=null){ evnt.addEventListener(Event.COMPLETE, onComplete,false,0,true); } evnt.addEventListener(IOErrorEvent.IO_ERROR, onError,false,0,true); } private function onStart(e:Event):void { backInit(); } private function onProgress(e:ProgressEvent):void { var total:Number = Math.round((e.bytesLoaded*100)/e.bytesTotal); backProgress(total); } private function onComplete(e:Event):void { isLoading=false; backComplete(loader.getChildAt(0),loader); } private function onError(e:Event):void { trace("LOADER ERROR: "+e) isLoading=false; if(backError!=null){ backError(); } } } }
| ActionScript 3 | Flash CS3 | Flash CS4 |
No hay comentarios.----------------------------------------------
Si los tutoriales o los temas tratados en este blog te gustaron y quieres ayudarme a mantenerlos en linea puede hacer una donacion.
La donaciones son destinadas para mantener este blog y a los tutoriales Online.