2011-03-22 2 views
0

J'ai un composant avec des cases à cocher, les cases à cocher sont liés à booléens dans le code principal:Utilisez ActionScript pour décocher une case dans un composant?

<mx:CheckBox id="LyrClearAll" selected="{Application.application.bLyrClearAll}"/> 

Cela fonctionne très bien pour les cases qui ne changent pas, sauf si un utilisateur interagit avec eux. Mon problème apparaît parce que je veux "décocher" une des boîtes chaque fois que le composant est fermé. (Je sais que quelque chose d'autre qu'une case fonctionnerait mieux, mais j'essaie de garder les choses cohérentes dans ce composant.)

J'ai essayé de définir la variable booléenne liée à false, et j'ai essayé de mettre la case à cocher. valeur sélectionnée à false. Aucun ne fonctionne, chaque fois que j'ouvre le composant, la case à cocher est toujours cochée.

private function makeLyrsPopUp(evt:MouseEvent):void 
{ 
    var panelLyr:popUpLayers = PopUpManager.createPopUp(this, popUpLayers, false) as popUpLayers;  
    panelLyr.LyrClearAll.selected == false; //?? set checkbox back to unchecked 
    panelLyr["cancelButton"].addEventListener("click", removeMe); 
    panelLyr["okButton"].addEventListener("click", submitData); 
    PopUpManager.centerPopUp(panelLyr); 

    function submitData(event:Event):void //change layer visibility based on check boxes in popupLayer 
    { 
    bLyrStreet = panelLyr.LyrStreet.selected; 
    bLyrParcel = panelLyr.LyrParcel.selected; 
    bLyrClearAll = panelLyr.LyrClearAll.selected; 
    if (bLyrClearAll) 
    { 
     clearLayers(); 
     bLyrClearAll == false; //?? set checkbox back to unchecked 
    } 
    removeMe(event); 
    } 
} 

Répondre

1

bLyrClearAll devrait être déclaré bindable:

[Bindable] 
var bLyrClearAll: Boolean; 
+1

Je me sens vraiment stupide - le problème était mon == faux aurait été juste = false . Maintenant ça marche. – Ursula

+0

@Ursula: C'est aussi très bien de poser et de répondre à votre propre question. De cette façon, tout le monde peut voir, que la question est ... répondue. :) – splash

2

nécessaire pour changer == faux = false

Questions connexes