2009-06-29 3 views
0

Je suis développeur débutant dans Flex et j'utilise viewstates récemment. J'ai eu quelques composants TitleWindow contextuels personnalisés qui sont initialisé à l'aide:Création d'une fenêtre contextuelle et définition de son état d'affichage avant qu'elle ne s'affiche

PopUpManager.createPopUp(this, ContentCreate, true); 

Ils contiennent tous deux des états d'affichage déjà, et sont très similaires, donc je voulais les combione dans un pop-up TitleWindow et changer l'état d'affichage à l'initialisation du popup à soit la version Créer de la popup ou la mise à jour. Je pensais que j'étais intelligent haha, mais je me suis rendu compte après avoir refacturé mon code que, pour autant que je sache, je ne peux pas passer des paramètres à la popup pour indiquer quel état je veux, si elle est créée en utilisant le PopUpManager.

Est-ce que quelqu'un sait comment transmettre des paramètres au gestionnaire de fenêtres ou créer le composant ContentCreate (TitleWindow) en mxml ou en code pour que je puisse spécifier l'état d'affichage?

Répondre

2

Lorsque vous créez une fenêtre contextuelle à l'aide de la méthode createPopUp, une référence à la fenêtre créée est renvoyée. Exemple:

pop = mx.managers.PopUpManager.createPopUp(this, TitleWindow, false); 

Vous pouvez créer une fonction publique setState de dire la nouvelle fenêtre qui état à afficher.

pop = mx.managers.PopUpManager.createPopUp(this, TitleWindow, false); 
pop.setDisplay('Update'); 

Votre exemple serait plus comme:

var pop:ContentCreate; 
pop = PopUpManager.createPopUp(this, ContentCreate, true) as ContentCreate; 
pop.setState('Update'); 

Cela devrait fonctionner.

Plus d'informations peuvent être trouvées here.

Espérons que cela aide.

Questions connexes