|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 10 ![]() |
Bonjour
En fait, j'aurais eut une petite question concernant l'extension de la classe XML. C'est a dire, de créer une classe qui étends la classe "XML" ce qui permettrait en outre d'encapsuler le chargement du fichier XML et d'éviter à chaque fois de retaper les load, onlooad, etc... .On aurait juste à cibler le fichier xml dans le scénario et hop. J'ai donc creer cette classe : class testXML extends XML{ //attributs de la classe var conteneurXML:XML; var dossierXML:String; var attribut:String; var ecrit:Object; var nbNoeuds:Object; //constructeur la classe public function testXML(dossier:String){ super; conteneurXML=new XML; dossierXML=dossier; ChargeurXML() } //Méthodes de la classe public function ChargeurXML():Void{ conteneurXML.onLoad=prechargement; conteneurXML.load(dossierXML); conteneurXML.ignoreWhite=true; } public function prechargement(succes:Boolean){ if(succes){ trace("fichier chargé"); //enregistrement de valeur dans attribut et nbNoeuds attribut=conteneurXML.firstChild.childNodes.attributes.jpegURL; nbNoeuds=conteneurXML.firstChild.childNodes.length; trace("fin"); _root.play(); } else { trace("erreur de chargement"); } } } Seulement voilà, même si flash ne m'indique pas d'erreur, attribut et nbNoeuds, n'enregistre aucune valeur. J'aurais juste voulu savoir si quelqu'un à déja tenté de creer cette classe et y'a réussi ; ou si actionscript 3 offre une meilleur solution. Parce que la je vois pas ce qui cloche. Bonne journée, |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : novembre 2004 Messages : 197 ![]() |
Salut,
J'ai pas Flash sous les yeux donc je te laisse tester la suite. Que donne "trace(this)" dans la fonction "prechargement" ? Si il donne "conteneurXML" alors "attribut" et "nbNoeuds" ne sont pas visible. C'est un classique problème de porté dans les fonctions d'événement pour les objets des classes. Tapes donc "Delegate Flash" sous Google et bonne chance pour la suite.
__________________
Si vous avez votre réponse !
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 10 ![]() |
trace(this) permet d'afficher en sortie, dans le scénario ce qui est écrit dans ton fichier XML. C'est d'autant plus rageant de voir que le chargement du fichier c'est bien, mais qu'il est impossible de pouvoir le traiter en sélectionnant ces informations.
|
|
|
00
|
|
|
#4 |
|
Membre habitué
![]() Inscription : novembre 2004 Messages : 197 ![]() |
Re,
Si "trace(this)" affiche le contenu du fichier, je crains que "trace(nbNoeuds)" et "trace(attribut)", dans la fonction "prechargement" donnent "undefined". Dans ce cas on est bien dans le cas de problème de portée de variable dont j'ai parlé.
__________________
Si vous avez votre réponse !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com