bonjour a tous,
j'ai un soucis avec des zones de textes crées dynamiquement
Lorsque je specifie un texte fixe, les champs sont bien crés, et le texte est bien affiché; Seulement lorsque je charge le texte avec un LoadVars, le loadVars lit bien le contenu du fichier et ma variable est bien renseignée, mais le texte n'est pas assigné a mon champ texte, enfin je suppose, puisque rien n'est affiché.
voici mon code
si je remplace la ligne
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 //------------------------------------ // Initialisation des variables //------------------------------------ var elts = [3,4,7]; // tableau des elements a afficher var lv = new LoadVars(); // tableau d'objet LoadVars var i = 1; // iterateur var pos = 0; _global.texteAAfficher = ""; elts = [3,4,7]; // les identifiants des fichiers a afficher //------------------------------------------ // Methode Onload de l'objet LoadVars //------------------------------------------ lv.onLoad = function(pSuccess){ if (pSuccess){ _global.texteAAfficher = this.Variable; } else{ _global.texteAAfficher = ""; } trace("texte ["+_global.texteAAfficher+"]"); } //------------------------------------------ // L'objet TextFormat //------------------------------------------ var monFormat = new TextFormat(); monFormat.color = 0xff0000; monFormat.bullet = false; monFormat.underline = false; //monFormat.align = "left"; monFormat.indent = 15; //-------------------------------------- // Boucle sur chacun des elements //-------------------------------------- for(var prop in elts){ //-------------------------- // le titre du point //--------------------------- this["titre"+i+"_mc"] = this.attachMovie("titre","titre"+i,i); this["titre"+i+"_mc"].txtTitre_txt.text = "Point "+elts[prop]; this["titre"+i+"_mc"]._x = 400; this["titre"+i+"_mc"]._y = pos; pos+= 23; //-------------------------- // le texte accompagnant //--------------------------- this["text"+i+"_mc"] = this.createEmptyMovieClip("text"+i,(i+5)); this["text"+i+"_mc"]._x = 400; this["text"+i+"_mc"]._y = pos; this["text"+i+"_mc"].createTextField(("text_txt"+i),1,0,0,100,50); // chargement du fichier lv.load("./".+elts[prop]+".txt"); this["text"+i+"_mc"][("text_txt"+i)].text = _global.texteAAfficher; this["text"+i+"_mc"][("text_txt"+i)].setTextFormat(monFormat); pos += this["text"+i+"_mc"]._height; i++; } delete _global.texteAAfficher; stop();
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 this["text"+i+"_mc"][("text_txt"+i)].text = _global.texteAAfficher;
dans ce cas, j'ai bien le texte qui est affiché...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 this["text"+i+"_mc"][("text_txt"+i)].text = "ceci est le texte";
Pourtant si je fais un trace de ma variable globale, j'ai bien la variable attendue... :s
encore une subtilité de Flash que j'ai du mal a saisir...
si vous aviez une idée sur l'origine et la facon dont je peux fixer ce probleme....
merci d'avance pour votre aide
Partager