Accueil > Forum > > > > AcrionScript 3 Lecture d'un fichier XML
AcrionScript 3 Lecture d'un fichier XML
mardi 21 juillet 2009 à 11:54:02 |
AcrionScript 3 Lecture d'un fichier XML

nuns
|
Bonjour,
J'essaie de faire une classe pour charger un fichier xml, qui comporte juste le chemin des images sur le serveur.
La lecture ce fait correctement, mais le problème est quand je veux récupérer le tableau avec ma liste d'images.
Par exemple avec la fonction "getItems" la liste d'image est vide.
Could you help me ? please.
Meilleurs salutation.
Code ActionScript :
package {
import flash.net.URLLoader;
import flash.utils.Timer;
import flash.xml.XMLDocument;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.URLRequest;
public class ChargeXML {
protected var items : Array;
protected var loader : URLLoader;
protected var xml : XMLDocument;
protected var t:Timer = new Timer(5000);
public function ChargeXML(str : String) : void {
//craete teh urlloader object
this.loader = new URLLoader();
this.items = new Array();
//craete a new flash.xml xmlDocuments object
this.xml = new XMLDocument();
//ignore the white spaces in the file
xml.ignoreWhite = true;
//set the loaders listener function that gets the event when the xml is loaded
this.loader.addEventListener(Event.COMPLETE, XMLloaded);
this.loader.addEventListener(ProgressEvent.PROGRESS, avancement);
//load the xml file from it's location
this.loader.load(new URLRequest(str));
trace(" Constructeur :" + this.items);
}
private function avancement(e:Event):void {
trace(e.target.bytesLoaded + " / " + e.target.bytesTotal);
}
private function XMLloaded(e:Event):void {
//parse the content and create a xml structure in the xmlDoscument
this.xml.parseXML(loader.data);
//firstchild represents first node, childNodes represent the nodes in the firstChild
for(var i:int = 0; i < xml.firstChild.childNodes.length; i++){
var o:Object = xml.firstChild.childNodes[i].attributes;
//pushing the item to the items array holding the mobiles
this.items.push(o.image);
}
trace(" XMLloaded :" + this.items);
}
public function getItems():Array {
trace(" getItems :" + this.items);
return this.items;
}
}
}
|
|
mardi 21 juillet 2009 à 16:17:37 |
Re : AcrionScript 3 Lecture d'un fichier XML

nickydaquick
|
Salut,
1- a quoi ressemble la structure du xml contenu dans le fichier?
2- a part quelques lignes de codes que tu devrais p-e modifier ou rajouter, la logique est juste.
3- je ne vois en aucun endroit un appel a la fonction getItems(), qui pourtant est bien ecrite.
montre nous en plus si tu veux bien.
Bonne continuation.
http://liveplayaz.com
je suis heureux de faire partie d'une grande famille ...!
|
|
mardi 21 juillet 2009 à 17:03:19 |
Re : AcrionScript 3 Lecture d'un fichier XML

nuns
|
Salut,
Imaginons dans mon main.
Code ActionScript :
//code de main exemple.
trace("before create object");
var items : ChargeXML = new ChargeXML('images.xml');
trace("after create object");
trace(items.getItems());
ce que je reçois dans la fenêtre système.
Code :
Avant Creat object
Constructeur :
apres Create object
getItems :
259 / 259
XMLloaded :imgs/1.jpg,imgs/2.jpg,imgs/3.jpg,imgs/4.jpg,imgs/5.jpg
Code XML :
<?xml version="1.0" encoding="utf-8" ?>
<data>
<image image="imgs/1.jpg" name="1" />
<image image="imgs/2.jpg" name="2" />
<image image="imgs/3.jpg" name="3" />
<image image="imgs/4.jpg" name="4" />
<image image="imgs/5.jpg" name="5" />
</data>
J'arrive à lire le contenu de mon xml. Ce que je ne comprends pas c'est pourquoi ma fonction "getItems" est exécuté avant le tracer qui ce trouve dans la fonction "XMLloaded"
Je ne sais si j'ai été claire.
Meilleurs salutation…
|
|
mercredi 22 juillet 2009 à 17:20:17 |
Re : AcrionScript 3 Lecture d'un fichier XML

nickydaquick
|
Salut,
C'est parce le chargement du fichier xml est fait de maniere asynchrone. Ce qui veut ire que flash initie le chargement du fichier et le confie a un thread, en attendant que le fichier soit charge (et que ta fonction soit notifiee) , il execute les autres lignes de codes. Voila pkoi ton tableau est vide lorsque ta fonctions est appelee : parce que ton fichier n'est pas encore charge et traite.
Bonne continuation.
http://liveplayaz.com
je suis heureux de faire partie d'une grande famille ...!
|
|
mercredi 22 juillet 2009 à 21:46:35 |
Re : AcrionScript 3 Lecture d'un fichier XML

nuns
|
Salut,
Merci pour ta réponse, mais comment je pourrais éviter ça.
Meilleurs salutation.
|
|
jeudi 23 juillet 2009 à 00:31:32 |
Re : AcrionScript 3 Lecture d'un fichier XML

nickydaquick
|
Salut,
tu as deja implemente la solution toi-meme: la fonction XMLloaded, qui est appelee lors du chargement complet du fichier. Tu peux recommencer une sequence d'actions synchrones a partir de la.
Bonne continuation.
http://liveplayaz.com
je suis heureux de faire partie d'une grande famille ...!
|
|
jeudi 23 juillet 2009 à 08:34:41 |
Re : AcrionScript 3 Lecture d'un fichier XML

nuns
|
Salut,
Je ne vois pas trop ce que tu veux dire.
Salutation
|
|
jeudi 23 juillet 2009 à 09:08:34 |
Re : AcrionScript 3 Lecture d'un fichier XML

Orange73
|
Réponse acceptée !
Hello,
par exemple dans ton constructeur, tu peux spécifier un second paramètre :
Code ActionScript :
var func : Function;
public function ChargeXML(str : String, pFunc : Function) : void
{
...
this.func = pFunc;
...
}
et ce paramètre sera la fonction de callback une fois le fichier chargé :
Code ActionScript :
private function XMLloaded(e:Event):void {
...
func();
}
Et donc lors de l'instanciation de la classe :
Code ActionScript :
var items : ChargeXML = new ChargeXML('images.xml', callback);
function callback():void
{
items.getItems();
}
A+
-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)

|
|
jeudi 23 juillet 2009 à 12:27:37 |
[Résolu] : AcrionScript 3 Lecture d'un fichier XML

nuns
|
Merci,
Ca fonctionne trés bien merci.
Meilleurs salutations.
|
|
Cette discussion est classée dans : flash, var, xml, import, items
Répondre à ce message
Sujets en rapport avec ce message
AS3 : puzzle avec chargement images via XML [ par nray ]
Bonjour à tous, Je suis entrain de créer un puzzle et je souhaite charger de manière aléatoire 20 mes images (de 3 puzzles différents) via un fichier
AS3 + XML [ par dimass01 ]
Bonjour, Je suis débutant en AS3 et je souhaiterai faire une carte de france avec des boutons pour chaque département. Le survol d'un bouton va perm
un carré simple en AS3 ne s'affiche pas - pourquoi?? heck!! [ par tim2 ]
Je n'avais pas touché à Flash depuis AS2; je ne comprends plus rien..! J'essaie de créer dynamiquement un carré - la fonction est bien appelée et je p
Problemes avec lecteur MP3 sous flash CS4/AS3 [ par nicolasp31000 ]
Bonjour à tous Je débute dans la programmation sous AS3 et j'essaye actuellement de créer un petit contrôleur(bouton play et bouton pause) pour pouvoi
AS3 problème sous IE avec une animation de type caroussel développée avec papervision [ par jpetre ]
Premièrement bonjour à tous car ceci est mon premier post sur ce site :) Alors mon soucis, c'est que mon animation, une fois développée et intégrée, f
Problèmes avec player pour webradio. [ par SteppenWulf ]
Bonsoir, J'essaie de créer un player pour écouter ma webradio... Mais je rencontre des problèmes. ( Je suis un Newbie, j'utilise flash depuis ce we
Déplacement au clavier (AS3) [ par greg63 ]
Bonjour a tous, Je sais le sujet fût traité beaucoup de fois mais malgré tous les topics je n'ai pas trouvé de solutions. Voila mon problème. Je réa
Demande d'aide pour une Galerie PaperVision3D avec XML [ par ximeng ]
Bonjour à tous ! Et bravo à tout les flashkodiens, sans ce site je serai perdu ! Je suis super novice en AS3, et je n'ai jamais utilisé papervision j
Ajout d'un élément fixe sur diaporama en AS3 [ par alxrb ]
Hello, j'ai suivi un tuto en AS3 pour créer un diaporama avec fondu et déplacement sur y. Tout fonctionne, sauf que je voudrais placer un logo sur la
impossible d'afficher des données XML [ par Otakumaster ]
Bonjour,cela fait 3 jours que j'essaye d'afficher les données d'un xml dans Flash en AS3,voici le XML en question: <client nom="3M" logo="im
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|