2012-09-25 2 views
0

J'utilise la logique URL pour créer une arborescence dynamique dans Flex en utilisant un script d'action. Toutefois, le code output is not properly shown (Object name is shown instead of Label).enter image description hereArbre dynamique générée en Flex Actionscript

est disponible dans l'URL mentionnée ci-dessus.

Aidez-nous s'il vous plaît.

+0

code postal code postal code postal –

+0

Il est préférable que vous avez lu la question correctement –

+0

Il est préférable que vous publiez correctement le code afin que nous puissions vous montrer exactement où vous êtes allé mal. Ou préférez-vous que tout le monde continue de deviner comme le faisait Max en bas. Avez-vous déjà pensé que la plupart des développeurs de Flex l'avaient déjà vu auparavant? C'est une solution facile, mais pour la résoudre, nous devons voir comment le fournisseur de données est configuré et voir le mxml où vous générez l'objet. As-tu honte de ton code que tu ne peux pas montrer aux gens? –

Répondre

1

Donner votre mise en œuvre toString() correcte de votre DataTreeNode, il aurait un affichage correct dans cet arbre.

Un exemple: A condition que le DataTreeNode de classe a un ensemble de données: champ objet, et cet objet a une urlToDisplay: propriété String que vous souhaitez afficher. Faites comme ceci:

override public function toString():String { 
    if (!data) return '[null]'; 
    return data.urlToDisplay; 
} 
-2

Vous devrez écrire un ItemRenderer qui indique à votre arbre comment il doit afficher les composants. Les ItemRenderers sont pour la plupart de simples classes MXML qui accèdent chacune à un élément et affichent les données comme vous le souhaitez. Vous devrez assigner le ItemRenderer à votre composant.

Voir cet article: http://help.adobe.com/en_US/flex/using/WS03d33b8076db57b9-23c04461124bbeca597-8000.html

+0

Il n'a pas besoin d'un moteur de rendu pour cibler l'étiquette de l'objet de données. –

+1

L'implémentation d'un ItemRenderer qui lit l'étiquette de l'objet de données et l'affiche serait une façon de le faire. Si l'objet de données ne contient pas seulement le texte de l'étiquette, mais aussi l'objet de l'étiquette lui-même, il devrait envisager de séparer ces éléments. Les objets de données ne contiennent généralement pas d'objets d'affichage. –

0

Si vous comptez uniquement sur simples objets ou classes de données, vous pouvez utiliser labelField ou de labelFunction de l'arbre afin de lire et/ou des données de format, qui est passé au moteur de rendu. Aucune nouvelle classe de rendu d'élément n'est nécessaire.

Le moteur de rendu devrait être compatible avec ces fonctions!

Sur une note du site: l'article ne sont pas "renderer la plupart de simples classes MXML", ils sont des instances de composants. Peu importe comment ils sont mis en œuvre. Il existe des pratiques recommandées telles que l'évitement des liaisons de données dans les moteurs de rendu d'éléments, c'est pourquoi il est courant d'utiliser le balisage pour le dessin, mais d'implémenter le comportement des vues en fonction du cycle de vie du composant Flex. vous pourriez vouloir lire à ce sujet dans la documentation, car c'est une lecture nécessaire pour un développeur Flex.