J'ai rencontré un problème. Je fais un programme SIG en utilisant flex.Cairngorm XXXCommand être exécuté plusieurs fois
Il y a une carte dans mon application, quand je clique sur une icône sur la carte, fenêtreA apparaît, quand je clique sur un lien dans la fenêtreA, la fenêtreB apparaît, mais ici mon problème ressort, quand je ferme lien dans WINDOWA une autre fois, deux WindowB pop up ...
Dans mon WINDOWA, je
...
var windowBEvt:WindowBEvent = new WindowBEvent();
CairngormEventDispatcher.getInstance().dispatchEvent(windowBEvt);
...
<control:WindowBControl id='control1'>
En WindowBControl, je
addCommand(WindowBControl.EVENT_POPUPWindowB,WindowBCommand);
En WindowBCommand, je
public function execute(event:CairngormEvent):void
{
...
var windowB:WindowB = new WindowB();
PopUpManager.addPopUp(windowB);
...
}
Quelqu'un pourrait-il me donner un coup de main?
Merci beaucoup!
Best, Shuo
Vous avez raison, Tim! WindowBControl est instancié plus d'une fois, tandis que je débogue, je remarque que la méthode execute dans WindowBCommand est exécutée plus d'une fois. Et votre réponse résout ma question.J'ai mis à l'intérieur de l'application principale, cela fonctionne correctement.Merci un million!Peut-être que j'ai un peu de malentendu sur Cairngorm. Habituellement, j'ai mis le FrontController dans le même mxml avec l'action distribuant le CairngormEvent, je pensais que le FrontController agirait rapidement. L'envoi CairngormEvent pourrait-il être écouté dans tout le programme? –
Shuo