Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 10.12.2012, 21:00
tofflife вне форума Посмотреть профиль Отправить личное сообщение для tofflife Найти все сообщения от tofflife
  № 1  
Ответить с цитированием
tofflife

Регистрация: Jul 2009
Сообщений: 95
По умолчанию Проблемы со сценой в подгружаемых swf

Всем привет! Странное дело:

Создал две swf, загружаю одну во вторую, и во второй swf сеттеры inspectable properties не вызываются у всех компонентов на главной сцене(тоесть все, что я задал на вкладке properties не передается в сеттеры компонента Component). Так же не работает и код во фреймах.

Main document главной swf(упрощен):

Код AS3:
package {
	import flash.display.*;//Для краткости 
	import flash.net.URLRequest;
	import flash.events.Event;
	import flash.system.*;//Для краткости примера
	import gui.GUIClass1;
 
	GUIClass1;//Обратите внимание на использование этого класса, пожалуйста
	public class Main extends MovieClip{
 
		public function Main():void{
			loadSwf("GUI1.swf", onLoadedSWF1);
		}
 
		private function onLoadedSWF1(event:Event):void{
			addChild(LoaderInfo(event.currentTarget).loader);
		}
 
		private function loadSwf(path:String, hdlr:Function):void{
			//new LoaderContext(false, new ApplicationDomain(ApplicationDomain.currentDomain)); 
			var context:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);
			var ldr : Loader = new Loader();
			ldr.load(new URLRequest(path), context);
			ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, hdlr);
		}
	}
}
Main document второй swf:
Код AS3:
package gui{
	import flash.display.MovieClip;
	import flash.events.Event;
	import flash.net.registerClassAlias;
	import component.Component;
	public class GUIClass1 extends MovieClip{
		public var cmpnt:Component;
 
		public function GUIClass1(){
			super();
		}
	}
}
Код компонента:
Код AS3:
package component{
	import flash.display.MovieClip;
	import flash.text.TextField;
	public class Component extends MovieClip{
		public var textField : TextField;
 
		[Inspectable(type="String", defaultValue="", verbose="0")]
		public function get text():String{return textField.text;}
		public function set text(txt:String):void{
			textField.text = txt;
		}
 
	}
}

Самое странное, что если убрать импорт GUIClass1 из главной swf, то все начинает работать.
Как я понимаю, проблема в конфликтах классов. Как видите, я использую доменный механизм, но он не помог.
Вы сталкивались с таким?

Создать новую тему   Часовой пояс GMT +4, время: 09:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:43.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.