Salut tout le monde,
Pouvez vous m'indiquer comment extraire le text du noeud selectionné d'un objet Tree?
Merci d'avance.
Salut tout le monde,
Pouvez vous m'indiquer comment extraire le text du noeud selectionné d'un objet Tree?
Merci d'avance.
Par exemple, dans le Tree : il faut ajouter :
et voici la définition de cette fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part itemClick="onTreeClick(event)"
Il faut l'adapter selon le type des objets du Tree
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 private function onTreeClick(e:Event):void{ var mySelectedObject:Object = Tree(e.currentTarget).selectedItem; }
Merci pour la réponse,
Quand j'ai essayé le code que tu m'as proposé j'ai reçu le message d'erreur suivant:
J'aimerais aussi savoir comment préciser le type des objets du Tree.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.
Merci encore!
Après quelques manipulation je reçois plus le message d'erreur précédent mais quand j'essai de récupérer la valeur du text dans la variable maChaine comme suit:
la valeur que je récupère est: [Object Object], je me demande comment serait possible de règler ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public function onTreeClick(e: Event):void{ var mySelectedObject:Object = Tree(e.currentTarget).selectedItem; maChaine = mySelectedObject.toString(); }
Parce que tu récupère un objet qui ne peut pas être transformé en String
Les objets qui sont dans le Tree sont de quel type? quel sont leurs propretés?
Qu'est ce qu'il y a dans le dataProvider de ton Tree?
voici la fonction avec laquelle j'alimente mon Tree:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public function listEntites():void{ var array:Array = new Array({label:"Risque", children: new Array({label:"Marché", children: new Array({label:"test"})}, {label:"Opérationnel"})}, {label:"DRT", children: new Array({label:"Architecture"})}); var collection:ArrayCollection = new ArrayCollection(array); tview.vo.listEntite= collection; }C'est la première fois que je travail avec un Tree donc je me demande comment je peux préciser le type de ses objets.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <mx:Tree width="100%" height="100%" id="treeEntiteAffectation" dataProvider="{vo.listEntite}" labelField="label" textAlign="left" fontSize="9" itemClick="controller.onTreeClick(event)" dataTipField="String"></mx:Tree>
Merci encore pour ton aide
J'ai trouvé la solution, voici ce qu'il faut faire:
Partie mxml:
Partie ActionScript:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <mx:Tree width="100%" height="100%" id="monTree" dataProvider="{vo.listEntite}" labelField="label" itemClick="{onTreeClick()}"></mx:Tree>
Ainsi le text du noeud selectionné est récupéré dans maChaine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public function onTreeClick():void{ var maChaine = monTree.selectedItem.label; }
Partager