8
votes

Dans Flex, comment désélectionnez-vous tous les boutons radio d'un groupe?

En flex, parfois lorsque vous devez effacer un formulaire, vous rencontrez dans le problème que les groupes de boutons radio semblent déformer: Essayez comme vous le permet, définissez sélectionné = False sur tous les boutons, réglage de la sélection = null sur le groupe, faisant Les deux, les faisant deux fois, etc., vous semblez toujours vous retrouver avec un petit bouton radio pesky qui est toujours sélectionné. Comment résolvez-vous cela et restaurez le groupe de boutons radio à son état initial de No Selection?


0 commentaires

7 Réponses :


0
votes

Le seul moyen de résoudre ce problème que je connais consiste à ajouter un bouton radio factice caché que vous sélectionnez afin de désélectionner tous les autres.


0 commentaires

0
votes

Est-ce que cela ne fonctionne pas?

      function clearRadioSelection(theGroup) {
        theGroup.selection.selected = false;
        theGroup.selectedRadio = undefined;
        theGroup.dispatchEvent({type:"change"});
  }


1 commentaires

Désolé, mais cela doit être un vieux code. Il n'y a pas de propriétés et d'événements «SeleysRadio» ne peuvent pas être expédiés comme ça.



1
votes

Vous pouvez essayer de définir toutes vos boutons radio sur un radiobuttongroup puis définissez Radiobuttongroup.selection à NULL

voir http: //livedocs.Adobe. com / flex / 3 / langref / mx / contrôle / radiobuttontongroup.html # includeExamplessummary pour référence sur Comment implémenter le radiobuttongroup Contrôle.


1 commentaires

Oui, cela fonctionne dans des applications de test simples. Il fonctionne également à définir sélectionné = False sur le bouton radio sélectionné. Mais je rencontre des situations où aucune de ces deux solutions ne fonctionne. Je suis désolé d'être si vague. Je verrai si je peux creuser le code et produire une démo quand je reviens de mes vacances.



0
votes

Je pense que vous utilisez le Radiobuttongroup et lie tous les commandes Radiobutton pour le groupe protticulaire.

SO, FACILE WAY:

Fonction privée Radiogrouprèset (): Void

{

radiogroup1.selection = null;

}

Cela devrait fonctionner!


0 commentaires

12
votes

Vous devez regrouper tous les boutons radio dans un Radiobuttongroup puis définissez la sélection de groupe sur NULL:

<mx:RadioButtonGroup id="myGroup" />

<mx:RadioButton label="One" groupName="myGroup" />
<mx:RadioButton label="Two" groupName="myGroup" />
<mx:RadioButton label="Three" groupName="myGroup" />

<mx:Button label="Clear" click="myGroup.selection = null;" />


0 commentaires

0
votes

Évidemment, les réponses précédentes devraient vous procurer où vous allez de la manière la plus propre, mais si vous frappez la tête contre le mur, collectez tous vos boutons radio dans un composant, puis redessinez tout le composant lorsque vous avez besoin. pour le nettoyer. Problème résolu.

Les formulaires sont au mieux gimpy de toute façon. Pas besoin de rendre la vie trop difficile.


0 commentaires

0
votes

Définissez simplement la propriété de sélection du Radiobuttongroup sur NULL et que cela ira à sa condition initiale.

par exemple, si xxx

puis écrit la ligne suivante dans ActionScript xxx

réinitialiserait le groupe sans radio bouton sélectionné à gauche. J'espère que ça vous aide. J'ai pris l'idée du lien suivant. Bonne chance.

http://blog.flexemples.com/2008/01/06/clearing-aelected-radiobutton-control-in-flex/


0 commentaires