Показать сообщение отдельно
Старый 09.06.2011, 20:55
Фенёк вне форума Посмотреть профиль Отправить личное сообщение для Фенёк Найти все сообщения от Фенёк
  № 1  
Ответить с цитированием
Фенёк

Регистрация: May 2011
Сообщений: 221
Question Обращение к свойствам загруженных объектов

Вот есть такой кусок кода

Код AS3:
package 
{
	import flash.display.*;
	import flash.net.URLRequest;
	import flash.events.*;
 
	public class TheGame extends MovieClip
	{
		public function TheGame()
		{
 
			var loader:Loader = new Loader();
 
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
			loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
 
			loader.load(new URLRequest("library.swf"));
		}
 
 
		private function completeHandler(e:Event):void
		{
			var info:LoaderInfo = e.target as LoaderInfo;
			try
			{
				var SubmitButton:Class 	= info.applicationDomain.getDefinition("SubmitButton") as Class;
				var SpeakBubble:Class 	= info.applicationDomain.getDefinition("SpeakBubble") as Class;
				var ReplayButton:Class 	= info.applicationDomain.getDefinition("ReplayButton") as Class;
				var NextButton:Class 	= info.applicationDomain.getDefinition("NextButton") as Class;
				var CorrectBubble:Class = info.applicationDomain.getDefinition("CorrectBubble") as Class;
				var CannotBubble:Class 	= info.applicationDomain.getDefinition("CannotBubble") as Class;
				var BG:Class 			= info.applicationDomain.getDefinition("BG") as Class;
 
				addChild(new BG());
				addChild(new SpeakBubble());
				addChild(new SubmitButton());
				addChild(new ReplayButton());
				addChild(new NextButton());
				addChild(new CannotBubble());
				addChild(new CorrectBubble());
			}
			catch (e:ReferenceError)
			{
				trace('ERROR: '+ e);
			}
		}
 
		private function ioErrorHandler(e:IOErrorEvent):void
		{
			trace("ERROR: " + e);
		}
	}
}
меня терзают два вопроса.

1. Можно ли оптимизировать фрагмент непосредственно загрузки файлов?
2. Как обратиться к объекту и его свойствам в другом обработчике событий? Я пробовал сложить объект в переменную, но тщетно ее существование ограничивается обработчиком. Я пробовал прописывать в методе конструкторе конкретного класса, но опять-таки тщетно - то ли класс не видим для основного, то ли.. да даже и не знаю чего...