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:
<?xml version="1.0" encoding="iso-8859-1" ?>
<racine>
<client nom="3M" logo="images//logo_3m.jpg" />
<client nom="Accor" logo="images//logo_accor.jpg" />
<client nom="AGF" logo="images//logo_agf.jpg" />
<client nom="Air Liquide" logo="images//logo_air_liquide.jpg" />
</racine>
et mon actionscript que j'ai mis dans mon anim fla:
fscommand("fullscreen", "true");
stop();
// nous importons les classes necessaires :
import flash.events.IOErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.ProgressEvent;
// nous déclarons un objet URLLoader :
var chargeur:URLLoader = new URLLoader ();
// nous crééons un objet URLRequest qui contient l'url du fichier :
var adresse:URLRequest = new URLRequest ("data.xml");
// nous définissons le format du fichier chargé :
var format = URLLoaderDataFormat.XML;
chargeur.dataFormat = format;
// nous lançons le chargement du fichier, en indiquant l'adresse de celui ci par l'objet URLRequest :
chargeur.load(adresse);
// définition des évenements de l'objet chargeur
chargeur.addEventListener(Event.COMPLETE, finDuChargement);
chargeur.addEventListener(ProgressEvent.PROGRESS, avancement);
chargeur.addEventListener(IOErrorEvent.IO_ERROR, indiquerErreur);
// définition de la fonction éxecutée par l'évenement COMPLETE :
// ( déclenchée lorsque le chargement se termine )
var clients:XML = new XML(event.target.data);
for each (var property:XML in clients.client){
var myText:TextField = new TextField();
myText.y = 110;
myText.x = 50;
myText.width = 200;
myText.height = 200;
myText.text = (property[0].@["nom"]);
addChild(myText);
}
// définition de la fonction éxecutée par l'évenement PROGRESS :
// déclenchée à chaque avancement du chargement )
function avancement( event:Event) {
trace(event.bytesLoaded+" chargés sur "+event.bytesTotal);
}
// fonction indiquant si une erreur de chargmement survient :
function indiquerErreur( event:Event ) {
trace(event);
}
Le but est d'afficher chaque nom d'entreprise dans un clip, ainsi que son logo.
J'ai ici tenté d'afficher juste les noms mais ça ne fonctionne pas et je pense avoir fait
tous les tutos trouvables avec Google, sans y arriver...
Je remercie d'avance les bonnes âmes qui pourront me donner un coup de main.