У меня возникла проблема. Я делаю программу ГИС с использованием flex.Cairngorm XXXCommand выполняется несколько раз
В моем приложении есть карта, когда я нажимаю один значок на карте, появляется окноA, когда я нажимаю ссылку внутри windowA, появляется окноB, но здесь возникает моя проблема, когда я закрываю окно B и нажимаю ссылка внутри windowA другой раз, два windowB выскочит ...
В моей windowA, я
...
var windowBEvt:WindowBEvent = new WindowBEvent();
CairngormEventDispatcher.getInstance().dispatchEvent(windowBEvt);
...
<control:WindowBControl id='control1'>
В WindowBControl, у меня есть
addCommand(WindowBControl.EVENT_POPUPWindowB,WindowBCommand);
В WindowBCommand, у меня есть
public function execute(event:CairngormEvent):void
{
...
var windowB:WindowB = new WindowB();
PopUpManager.addPopUp(windowB);
...
}
Может ли кто-нибудь дать мне руку?
Большое спасибо!
Бест, Шо
Ты прав, Тим! WindowBControl создается несколько раз, в то время как я отлаживаю, я замечаю, что метод execute внутри WindowBCommand работает более одного раза. И ваш ответ разрешает мой вопрос. Я положил внутри основного приложения, он работает правильно. Спасибо миллион! Возможно, у меня есть недоразумение на Cairngorm. Обычно я помещал FrontController в тот же mxml с действием, отправляющим CairngormEvent, я думал, что FrontController будет действовать быстро. Может ли диспетчер CairngormEvent прослушиваться по всей программе? –
Shuo