Bonjour,

j'ai récemment téléchargé la nouvelle beta de flash builder et j'ai un
soucis avec getDefinitionByName.
Pour le sdk 3 j'ai un ensemble de classes qui charge dynamiquement les
composants graphiques
à partir d'un fichier de configuration et un swf pour avoir accès aux
définitions de classes des composants utilisés.

Seulement voilà, si j'adapte bêtement le code en changeant addChild
par addElement :

          var classe:Class=getDefinitionByName
("spark.components.Button") as Class;
          var composant:*=new classe();
          this.addElement(composant);

mais j'obtiens ça :

          Error: Apparence
deTest.ApplicationSkin2._ApplicationSkin_Group1.contentGroup.Button6
introuvable.

En effet, composant.skin est null alors que (new Button()).skin !=
null
Il semble donc qu'aucun skin ne soit attribué par défaut par cette
méthode contrairement à une instanciation classique.

Du coup j'ai rajouté le skin :

          var skinClass:Class=getDefinitionByName
("spark.skins.spark.ButtonSkin") as Class;
          var skin:*=new skinClass();
          skin.addElement(composant);
          this.addElement(composant);

Et là ça marche !

Mais il reste un soucis, si j'applique la même méthode avec un Panel,
il n'y a aucune exception de levée mais le Panel n'apparait pas et son
skin reste null. Il est tout de même rajouter à la scène, puisqu'on
peut lui ajouter un Button qui lui sera visible...

Tout se règle évidemment, si je place un new Panel() quelque part dans
le code, mais je perds tout l'intérêt de mon chargement dynamique.

Merci d'avance


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "FCNG" de 
Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/fcng?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à