Просмотр полной версии : Проблема с диалогами во flex
volfgang_samurai
25.09.2008, 16:28
Необходимо создать дочернее диалоговое окно, при этом процесс на родительском должен остановиться и ждать закрытия дочернего!
как показывает пример
...
Alert.show("СТОП!!!");
trace("должен ждать запрития окна");
...
надпись "должен ждать запрития окна" появится сразу после появления окна с сообщением "СТОП!!!" и не будет дожидаться его закрытия.
PopUpManager работает аналогично.
Подскажите пожалуйста красивое решение данной проблемы.
ex.image
25.09.2008, 16:35
var popUp:IFlexDisplayObject = PopUpManager.createPopUp(....
popUp.addEventListener(Event.CLOSE, closeHandler)
JesterAntik
26.09.2008, 18:21
при использовании попап менеджера второй или третий параметр отвечает за то что бы отключить работу основного приложения.
Ну отключить работу приложения не возможно таким образом. Модальность во флэше это всего лишь спрайт под окном, которыйы глушит все маус евенты и все.
JesterAntik
29.09.2008, 21:05
возможно, настолько детально не изучал такую возможность
Можно так
main.mxml
public function function1():void{
var md:popup = new popup;
PopUpManager.addPopUp(md,this,true);
PopUpManager.centerPopUp(md);
md.init(function2);
}
public function function2():void{
trace("должен ждать запрития окна");
}
popup.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="700" height="90">
<mx:Script>
<![CDATA[
var func:Function;
private function init(func:Function):void{
this.func = func;
}
private function close():void{
func.call(this);
}
]]>
</mx:Script>
<mx:Button label="Закрыть" click="close()"/>
</mx:TitleWindow>
Смысл в том, что при создании модального окна ему передается функция, которая должна будет вызвана
md.init(function2);
А в самом модальном окне сначала эта функция сохраняется при инициализации
private function init(func:Function):void{
this.func = func;
}
А затем вызывается
private function makeRequest():void{
func.call(this);
}
volfgang_samurai
03.10.2008, 13:14
Всем спасибо, помогли!
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.