Показать сообщение отдельно
Старый 16.01.2013, 20:30
Sintesis вне форума Посмотреть профиль Отправить личное сообщение для Sintesis Найти все сообщения от Sintesis
  № 5  
Ответить с цитированием
Sintesis
 
Аватар для Sintesis

Регистрация: Jul 2008
Сообщений: 912
вот готовый внешний, самый подходящий для данного случая:
Код AS3:
package {
 
	import flash.display.*;
	import flash.events.*;
	import flash.net.URLRequest;
	import flash.text.*;
 
	public class SlimLoader extends Sprite{
		private var loader:Loader;
		private var progressOutput:TextField;
 
		public function SlimLoader(){
			createLoader();
			createProgressIndicator();
			//"http://../*.swf"
			load(new URLRequest("*.swf"));
		}
		private function createLoader():void{
			loader = new Loader();
			loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressListener);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeListener);
			loader.contentLoaderInfo.addEventListener(Event.INIT, initListener);
		}
		private function createProgressIndicator():void{
			progressOutput = new TextField();
			progressOutput.autoSize = TextFieldAutoSize.LEFT;
			progressOutput.background = true;
			progressOutput.border = true;
			progressOutput.x = 200;
			progressOutput.y = 150;
			progressOutput.selectable = false;
			progressOutput.text = "LOADING...";
		}
		private function load (urlRequest:URLRequest):void{
			loader.load(urlRequest);
			if(!contains(progressOutput)){
				addChild(progressOutput);
			}
		}
		private function progressListener(e:ProgressEvent):void{
			progressOutput.text = "LOADING: " + Math.floor(e.bytesLoaded / 1027) + "/" + Math.floor(e.bytesTotal / 1027) + "kB";
		}
		private function initListener(e:Event):void{
 
		}
		private function completeListener(e:Event):void{
			removeChild(progressOutput);
			stage.addChild(loader.content);
		}
	}
}