2012-11-17 1 views
0

Je suis en train d'écrire une application dans Flex 4.créer Dynamiquement boutons radio dans un HGroup Flex

J'ai créé un HGroup comme ceci:

<s:HGroup id="hgMods"> 
</s:HGroup> 

Puis, en Actionscript, je bouclez une collection et ajouter dynamiquement des boutons radio à un RadioButtonGroup. Ensuite, je souhaite ajouter RadioButtonGroup au HGroup.

Voici mon code actuel:

var rbg:RadioButtonGroup = new RadioButtonGroup(); 

for each (var obj:[some object] in [some collection]) {    

    var rbGroupName:RadioButton = new RadioButton() 
    rbGroupName.label = obj.[some named value].toString() 
     rbGroupName.group = rbg; 

} 

Maintenant, comment puis-je ajouter le RadioButtonGroup au HGroup?

J'ai essayé hgMods.AddChild(rbg);

Quand je l'ai fait, je suis l'erreur:

1067: Implicit coercion of a value of type spark.components:RadioButtonGroup to an unrelated type flash.display:DisplayObject.

Répondre

1

Comme le message d'erreur dit: RadioButtonGroup est pas un DisplayObject, ce qui signifie que ce n'est pas un élément visuel et par conséquent vous ne peut pas l'ajouter à la liste d'affichage. RadioButtonGroup s la fonction est plutôt de grouper RadioButton ensemble logiquement, pas visuellement.

La solution serait d'ajouter chaque RadioButton directement au groupe H. Vous pouvez garder le reste de votre code tel qu'il est. Ajoutez simplement cette ligne à l'intérieur de la boucle:

hgMods.addElement(rbGroupName); 
+0

Brillant. Je vous remercie. C'est tellement évident maintenant. – crackedcornjimmy

Questions connexes