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? P>
7 Réponses :
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. P>
Est-ce que cela ne fonctionne pas?
function clearRadioSelection(theGroup) { theGroup.selection.selected = false; theGroup.selectedRadio = undefined; theGroup.dispatchEvent({type:"change"}); }
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.
Vous pouvez essayer de définir toutes vos boutons radio sur un voir http: //livedocs.Adobe. com / flex / 3 / langref / mx / contrôle / radiobuttontongroup.html # includeExamplessummary pour référence sur Comment implémenter le radiobuttongroup code> puis définissez Radiobuttongroup.selection à NULL P>
radiobuttongroup code> Contrôle. P>
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.
Je pense que vous utilisez le Radiobuttongroup et lie tous les commandes Radiobutton pour le groupe protticulaire. P>
SO, FACILE WAY: P>
Fonction privée Radiogrouprèset (): Void p>
{ p>
radiogroup1.selection = null; p>
} p>
Cela devrait fonctionner! P>
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;" />
É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. p>
Les formulaires sont au mieux gimpy de toute façon. Pas besoin de rendre la vie trop difficile. p>
Définissez simplement la propriété de sélection du Radiobuttongroup sur NULL et que cela ira à sa condition initiale.
par exemple, si p> puis écrit la ligne suivante dans ActionScript P> 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. P> http://blog.flexemples.com/2008/01/06/clearing-aelected-radiobutton-control-in-flex/ p> p>