PDA

Просмотр полной версии : проблема с PoPUpManager


Doctor76
02.04.2009, 19:22
С помощью PoPUpManager создаю всплывающее окно:

private function createTitleWindow():void{
trace("imageWindow "+imageWindow);
imageWindow = PopUpManager.createPopUp(this, TitleWindow, true) as TitleWindow;

imageWindow.maxWidth = 1000;
imageWindow.maxHeight =700;
imageWindow.showCloseButton = true;
imageWindow.addEventListener(CloseEvent.CLOSE,_close);
imageWindow.x = 100;
imageWindow.y = 100;
}


при нажатии на кнопку всплывающего окна удаляю:

private function _close(event:CloseEvent):void{
PopUpManager.removePopUp(imageWindow);
imageWindow = null;
}


И все работает хорошо. но SWF ку, в которой все это реализовано, я загружаю в главную
При первоначальной загрузке все работает. Но когда в главную загружаю повторно, ругается на PopUpManager и не дает открыть окно.

Выдает такое: Main Thread (Suspended: TypeError: Error #1034: Type Coercion failed: cannot convert mx.managers::PopUpManagerImpl@2c4d8c21 to mx.managers.IPopUpManager.)

Может кто сталкивался с такой проблемой?

7thsky™
02.04.2009, 21:00
Скорее всего дублируются классы в ApplicationDomain? вы используете один SWFLoader? LoaderContext ему не определяете.

Приведите код загрузки.

Doctor76
03.04.2009, 10:36
Код загрузки следующий:



private function loadContent(_url:String):void{

loader = new Loader();
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplette);

if(_url != ""){
loader.load(new URLRequest(_url));
}
}






Если я что то не так делаю, может подскажете?

Bruiser
03.04.2009, 12:09
Активация окна

var modal:modal_window = modal_window;
PopUpManager.addPopUp(modal,this,true);
PopUpManager.centerPopUp(modal);


А при деактивации

private function close_modal():void{
PopUpManager.removePopUp(this);
}

Doctor76
03.04.2009, 12:17
Bruiser, а modal_window - это наследуется от TitleWindow
Я правильно Вас понял?

Bruiser
03.04.2009, 12:37
да, правильно поняли)