Salut,
C'est mon premier post sur ce forum alors salut à tous !
bon en fait je dois faire un projet en flash et j'ai un petit soucis d'action script.
Je vais déjà vous expliquer ce que je veux faire et ensuite je collerai mon code.
Déjà, mon code est attaché à la frame1 de ma scene.
Alors, en fait j'ai un fichier XML qui est correctement écrit et j'aimerai extraire les infos pouvoir les afficher.
Je commence par loader le fichier XML, puis j'extrait les informations qui m'interressent dans un tableau qui a été déclaré en dehors de la fonction.
Jusque là, pas de soucis, le tableau (et c'est bien le bon tableau !!) est bien mis à jour avec les valeurs (j'ai tout vérifié avec un trace).
le problème, c'est qu'une fois en dehors de la fonction, tous ce qui à été fait est oublié !!! c'est quand même bizarre non ? je sais pas comment est gérée la mémoire dans ce langage mais je comprend pas...
bon ben voila le code, si vous avez une idée, elle sera la bienvenue !
le XML :
l'actionscript
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <?xml version="1.0"?> <historique> <page no="1">texte1</page> <page no="2">texte2</page> <page no="3">texte3</page> </historique>
output :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 var tab_pages:Array=new Array("kekchoz"); trace("1-"+tab_pages); myXML=new XML; myXML.ignoreWhite=true; myXML.onLoad=traiteXML; myXML.load("essai.xml"); //ici, le tableau devrait être maj ! trace("2-"+tab_pages); //affichage du contenu de la première page affichePage(1); function traiteXML() { pages=myXML.firstChild.childNodes; for (i=0;i<pages.length;i++) { tab_pages.push(pages[i].firstChild); } trace("3-"+tab_pages) } function affichePage(no) { //réglage du format de txt format=new TextFormat(); format.size=73; format.color="0xFFFFFF"; format.font="Broken 15"; format.align="left"; //creation d'1 chp de txt dynamique createTextField("champ",0,100,200,824,450); champ.text=_root.tab_pages[no-1]; champ.setTextFormat(format); }
et sur la scene, "undefined" est affiché...
1-kekchoz
2-kekchoz
3-kekchoz,texte1,texte2,texte3
est-ce que ca peut avoir kekchoz avec le fait que le chargement du fichier est trop long ??
merci,
Lantier!
Partager