Показать сообщение отдельно
Старый 01.03.2011, 18:30
xAnthony вне форума Посмотреть профиль Отправить личное сообщение для xAnthony Найти все сообщения от xAnthony
  № 1  
Ответить с цитированием
xAnthony

Регистрация: Feb 2008
Сообщений: 5
По умолчанию Достучаться до свойств подгружаемой флешки

Делаю подгрузку внешнего swf-файла:

Код AS3:
public class program extends MovieClip {
 
	public static var loader:Loader
 
	public function program() 
	{
		loader = new Loader();
		var request:URLRequest = new URLRequest("path_to_file/auth.swf");
 
		loader.contentLoaderInfo.addEventListener(Event.COMPLETE, this.onComplete);
		loader.load(request);
	}
 
	public function onComplete (e:Event)
	{
		stage.addChild(loader);
 
		var target:MovieClip = e.target.content as MovieClip;
		trace (target.testVar);
	}
}
Внешний ролик привязан к классу main.Auth, который выглядит следующим образом:

Код AS3:
public class Auth extends MovieClip {
 
	public var testVar:String = "aaa";
 
	public function Auth() {}
}
В случае, когда в подгружаемом файле нет никаких обьектов на сцене, а в библиотеке нет символов с пометкой "Экспорт для ActionScript", доступ к переменной testVar происходит нормально. Однако, если таковые имеются, выдается ошибка:

ReferenceError: Error #1069: Не удалось найти свойство testVar в main.Auth__Preloader__; отсутствует значение по умолчанию.
at program/onComplete()


При этом подгруженный ролик на сцену добавляется, но обратиться к его свойству не удается.
За ранее, спасибо за помощь!