Comment récupérer deux valeurs dans une balise XML

Résolu
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010 - 1 janv. 2010 à 15:39
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010 - 8 janv. 2010 à 19:01
Bonjour et bonne annééééeee :)

Aujourd'hui mon tit soucis est le suivant :
Je travaille actuellement avec des clips dans flash qui vont récupérer l'url d'une image dans une balise xml.
code dans flash : loadMovie (monXML.firstChild.childNodes[1].firstChild,"cible2");
code xml : <cible2>urlimage1</cible2> (ceci fonctionne parfaitement)

Mon problème est que parfois, il est possible que deux images interviennent dans le clip cible au même moment : ex : <cible2>urlimage1urlimage2</cible2>

Comment puis-je associer les deux valeurs de urlimage1 et urlimage2 de façon à ce que flash affiche les deux images dans le même clip ?

Je précise quand même que je ne peux pas créer de nouvelle balises puisque d'autre balises suivent et ne peuvent pas souffrir d'un décalage avec la méthode de nœuds :p

Merci beaucoup :)

32 réponses

AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
5 janv. 2010 à 18:20
Ha j'ai du nouveau !

En fait, le truc c'est que j'avais laissé un ";" en trop dans le xml. Ceci m'a donc permis de constaté qu'il n'affichait pas rien mais uniquement la dernière entrée dans le XML, j'ai testé avec une troisième image à la suite et effectivement; il n'affiche que cette dernière, à moins que la transparence des png ne fonctionne pas mais ca serait étonnant vu que cela fonctionnait avant...
0
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
5 janv. 2010 à 20:29
C'est juste que les images que tu load sont superposées ;-)


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
0
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
5 janv. 2010 à 20:47
C'est que je mets des images de différentes tailles et en png avec un fond transparent. Y'a pas moyen de les voir toutes en même temps dans le même clip ? :p
0
nickydaquick Messages postés 416 Date d'inscription vendredi 31 janvier 2003 Statut Membre Dernière intervention 19 décembre 2013 3
5 janv. 2010 à 23:33
Salut,

Dans le meme clip elles se superposeront tes images. Utilise loadmovie avec un nom different a chaque fois, ca crees un clip par image, rajoute au clip courant.

Bonne continuation.

PS, lorsque tu load un XML avec ton namespace xml par exemple, ca compte pour 2 roots, verifie toujours cela (si tu as plus d'1 noeud root)

Bonne continuation.


je suis heureux de faire partie d'une grande famille ...!
/B&
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
6 janv. 2010 à 07:08
Hello :)

Bon ça doit vouloir dire non ^^;

Le truc c'est que j'ai genre 300 clips qui font appel à des png avec transparence et placés avec x et y et que j'aurais bien aimé avec ce type de méthode pouvoir réduire le nombre de clips, parce que mine de rien, beh c'est lourd à gérer pour flash. :p

Auriez-vous une autre idée où une alternative ? :)

Merci ^^
0
vinze60 Messages postés 1 Date d'inscription dimanche 26 mars 2006 Statut Membre Dernière intervention 6 janvier 2010
6 janv. 2010 à 09:27
Salut,

Ton cas m'interesse beaucoup, dans le passé j'étais confronté au même soucis et j'ai pas trouvé de solution (faut dire, j'ai pas trop cherché non plus). Le seul truc que j'ai trouvé c'est dupliquer les clips, un peu comme toi je suppose vu ton nombre important de clip...

Le soucis c'est qu'avec plein de movieclips tu alourdis le traitement flash et XML et on peut s'y perdre facielement... J'suis pas expert de flash mais à mon avis il doit y avoir moyen de faire appel à plusieurs images via XML dans un même movieclip à l'aide de split.

Si quelques âmes expertes de ce forum peuvent se pencher sur le probleme (avec un exemple peut être) ça pourra faire avancer un grand nombre de novices en flash sachant d'autant plus que la solution de ce probleme est très dur à trouver sur internet...


En tout cas bon courage ;)
0
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
7 janv. 2010 à 09:13
Merci pour ton intérêt sur le sujet :)

C'est clair que c'est pas évident de trouver des infos sur le net à ce sujet. D'ailleurs j'en ai pas trouvé :p

Si tu trouve une solution ou des infos sur le sujet, je suis preneur, et je pense que je serais pas le seul ;)

Bonnes recherches :p
0
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
7 janv. 2010 à 09:23
AOE_angelofdarkness => peux-tu m'envoyer tes sources afin que je regarde directement dans ton code ? merci


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
0
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
7 janv. 2010 à 11:11
Super maintenant c'est clair et limpide :)

Merci infiniment pour toutes ces réponses et ce temps passé à m'aider :)
0
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
8 janv. 2010 à 15:03
Bonjour bonjour :)

Me revoila pour une petite question subsidiaire :p

Mon soucis du jour est que j'ai appliqué ce magnifique code à mon fla mais comment puis-je faire en sorte d'utiliser plusieurs noeuds ? J'ai ajusté le code comme suit :

if(ok){
urlsStr = (monXML.firstChild.firstChild.firstChild).toString();
urlsStr2 = (monXML.firstChild.childNodes[1].firstChild).toString();
urlsStr3 = (monXML.firstChild.childNodes[2].firstChild).toString();
arrUrls = urlsStr.split(";"); 
arrUrls2 = urlsStr2.split(";"); 
arrUrls3 = urlsStr3.split(";"); 

for(var i=0; i<arrUrls.length; i++)
{
cible.createEmptyMovieClip("clipcible"+i, i);
cible["clipcible"+i].loadMovie(arrUrls[i]);
cible2.createEmptyMovieClip("clipcible"+i, i);
cible2["clipcible"+i].loadMovie(arrUrls2[i]);
cible3.createEmptyMovieClip("clipcible"+i, i);
cible3["clipcible"+i].loadMovie(arrUrls3[i]);

}}}


Cela fonctionne mais au refresh de l'affichage, lorsque le xml a changé de valeurs, tous les clip n'apparaissent pas sur la cible2. Je me suis dit que ca avait sans doute à voir avec les variables de début

var urlsStr:String;
var arrUrls:Array = new Array(); 


Mais hélas, je n'arrive pas à trouver la façon de faire.
0
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
8 janv. 2010 à 15:32
IL faut créer une boucle for(var i=0; i<arrUrls.length; i++)
pour chaque arrUrls... (arrUrls2.length, arrUrls3.length...)

A+



-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
0
AOE_angelofdarkness Messages postés 53 Date d'inscription mercredi 11 janvier 2006 Statut Membre Dernière intervention 14 décembre 2010
8 janv. 2010 à 19:01
Super :)

Merci merci merci :)

A +
0
Rejoignez-nous