Tutoriels vidéo art graphique gratuits

 
Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Pages: [1]   En bas

Auteur Sujet: intégrer du xml dans flash  (Lu 6202 fois)

mario

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 9
    • Voir le profil
    • E-mail
intégrer du xml dans flash
« le: mars 23, 2009, 09:07:27 am »

bonjour à tous !!!,
je veux créer ma gallerie photo dans flash en y intégrant du xml et je n'ai aucune idée ni aucune explication claire pour la faire. je viens donc vous demander de l'aide !!!
merci par avance !

Deodys

  • Wisi Pilier de comptoir
  • **
  • Hors ligne Hors ligne
  • Messages: 53
    • Voir le profil
    • z-brice portfolio
Re : intégrer du xml dans flash
« Réponse #1 le: mars 24, 2009, 16:15:58 pm »

Bonjour !

Est-ce que tu as des notions en Actionscript ? Si c'est uniquement xml qui te poses problème, je peux déjà t'aider en te donnant les fonctions de base pour y extraire les données à partir de flash.

Ou bien as-tu besoin d'un tuto complet ?
IP archivée
<- Un portfolio tout neuf à venir voir d'urgence ;-)

mario

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 9
    • Voir le profil
    • E-mail
Re : intégrer du xml dans flash
« Réponse #2 le: mars 26, 2009, 20:34:04 pm »

merci deodys ! non c'est juste le xml. oui en actionscipt je me débrouille mais je suis preneur si t'as quelques tip's ! merci encore.

Deodys

  • Wisi Pilier de comptoir
  • **
  • Hors ligne Hors ligne
  • Messages: 53
    • Voir le profil
    • z-brice portfolio
Re : intégrer du xml dans flash
« Réponse #3 le: mars 29, 2009, 19:42:12 pm »

Désolé, j'ai mis un peu de temps à répondre ... Mais comme on dit souvent, mieux vaut tard que jamais  ;D

Galerie simple en Flash et XML:

Alors tu commences par créer ton fichier xml. Dans mon exemple je l'appellerais galerie.xml et il sera formé ainsi:

<?xml version="1.0" encoding="UTF-8"?>
<photos>
     <photo num="1" fichier="images/image1.jpg" desc="Description image 1" />
     <photo num="2" fichier="images/image2.jpg" desc="Description image 2" />
     <photo num="3" fichier="images/image3.jpg" desc="Description image 3" />
</photos>

Maintenant tu crées un nouveau fichier fla et dans ta scène tu ajoutes ceci:
- 2 boutons (nommés precedent et suivant) -> Permet de faire défiler les photos
- 1 movieClip vide, nomme le "ecran" -> Cadre dans lequel vont s'afficher les images

A présent crée un nouveau calque qui contiendra le code Actionscript suivant:

// Chargement XML et initialisation
photos_xml = new XML();
photos_xml.ignoreWhite = true;
photos_xml.onLoad = function(ok) {

//initialisation des variables
if (ok) {
noeuds = photos_xml.firstChild.childNodes;

// on se positionne au second niveau
nbrPhotos = noeuds.length;

// on récupère le nombre de noeuds à ce niveau
premierePhoto = this.firstChild.firstChild;

// on sélectionne le premier noeud
dernierePhoto = this.firstChild.lastChild;

// on sélectionne le dernier noeud
enCours = premierePhoto;

// enCours correspond au noeud en cours d'affichage
// ici, la premiere photo sera donc la premiere affichée
affichePhoto(enCours);
// on affiche la photo du premier noeud
}
};

photos_xml.load("galerie.xml");

// affichage de la photo
function affichePhoto(photo) {
loadMovie(photo.attributes.fichier, ecran); // load les images dans le clip cible
}
// Gestion du bouton Suivant
suivant.onRelease = function() {
if (enCours.attributes.num == nbrPhotos) {
enCours = premierePhoto;
} else {
//nextSibling evalue l'objet XML et fait reference au frere suivant dans la liste des enfants du nœud parent.
enCours = enCours.nextSibling;
}
affichePhoto(enCours); //on lance la fonction
};
// Gestion du bouton Précédent
precedent.onRelease = function() {
if (enCours.attributes.num == 1) {
enCours = dernierePhoto;
} else {
enCours = enCours.previousSibling;
}
affichePhoto(enCours);
};

Voili voilou, si tu suis bien les différentes étapes ça devrait fonctionner ...
C'est une galerie tout ce qui existe de plus classique donc après c'est à toi de t'arranger pour ajouter les bons effets pour la rendre originale !

Si tu as un (ou même plusieurs on sait jamais) soucis n'hésite pas.

IP archivée
<- Un portfolio tout neuf à venir voir d'urgence ;-)

mario

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 9
    • Voir le profil
    • E-mail
Re : intégrer du xml dans flash
« Réponse #4 le: mars 30, 2009, 12:47:43 pm »

merci beaucoup c'est juste ce qu'il me fallait! me restera plus qu'a l'intégrer dans mon html. coooooooool !

mario

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 9
    • Voir le profil
    • E-mail
Re : intégrer du xml dans flash
« Réponse #5 le: mars 31, 2009, 12:45:53 pm »

euh pardon dans mon .fla

et la ça se corse .... comment qu'on fait !!!????

mario

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 9
    • Voir le profil
    • E-mail
Re : Re : intégrer du xml dans flash
« Réponse #6 le: mars 31, 2009, 19:44:29 pm »

Désolé, j'ai mis un peu de temps à répondre ... Mais comme on dit souvent, mieux vaut tard que jamais  ;D

Galerie simple en Flash et XML:

Alors tu commences par créer ton fichier xml. Dans mon exemple je l'appellerais galerie.xml et il sera formé ainsi:




par contre c'est de l'as2 et je code en AS3 oups !!!! mais j'ai quand même réussi à faire des choses... regarde .. ensuite il va falloir que je termine ce code ... ce qui est le plus dur .... donc c'est pour ça que je reviens !!  l'idée est d'appeler mon xml avec "x" photos dedans et pouvoir ainsi ne pas être obligé de rajouter chaque photo avec 2 ou 3 lignes de codes en plus à chaque fois ...
ci-joint le xml et mon code AS3

xml :
<Photos>
<Picture nombrephoto='40'></Picture>
<Picture chemin="/control_photo/"></Picture>
</Photos>

ActionScript :
//
// #####  Initialisation des variables
//

var fichierXML:XML;
var chargeurDonnees:URLLoader = new URLLoader();
var adresseFichierXML:URLRequest = new URLRequest("site.xml");


// #####  Chargement des données et déclenchement de l'écouteur du chargement des données
//

chargeurDonnees.load(adresseFichierXML);
chargeurDonnees.addEventListener(Event.COMPLETE, onComplete);


function onComplete(evt:Event):void {

   fichierXML = new XML(chargeurDonnees.data);
   trace(fichierXML.Picture[0].@nombrephoto);
   trace(fichierXML.Picture[1].@chemin);

   //lire le fichier xml
   

}

//

//var test=fichierXML.Picture[1].@chemin+31.jpg;
//charger l'image


var chargeur:Loader= new Loader();
var chemin:URLRequest= new URLRequest(fichierXML.Picture[1].@chemin+"31.jpg");
addChild (chargeur);
chargeur.load(chemin);

meeerrrrrcccccciiiiii !!!

Stéphane L

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 9
    • Voir le profil
    • Ligams
Re : intégrer du xml dans flash
« Réponse #7 le: avril 23, 2009, 09:48:39 am »

C'est encore plus facile en actionscript 3, la gestion du XPath est directement intégrée (il existe bien XPathAPI en as2, mais c'est pas top)

Je ne vois pas ou est ton problème, tu récupère bien le XLM dans ta variable fichierXML, et fichierXML.Picture est un XMLList (et non un Array attention)

tu peux donc boucler dessus :

//length() ou size() je sais plus
for(var i:Number = 0; i < fichierXML.Picture.length();i++)
{
   trace(fichierXML.Picture[i].@chemin);
}

Par contre, ton xml est pas super... revois le un peu, je vois pas l'intérêt de faire 2 balises Picture pour y coller 2 attributs différents.

Stéphane.
IP archivée
Quelques articles du web : un peu de développement

ligouane

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 11
    • Voir le profil
    • E-mail
Re : intégrer du xml dans flash
« Réponse #8 le: mai 08, 2009, 02:10:17 am »

On peut peut-être même coder un for...each non ?
IP archivée

RMistral (Wisi)

  • Global Moderator
  • Wisi Comment on décroche
  • *****
  • Hors ligne Hors ligne
  • Messages: 659
    • Voir le profil
    • Aexpmil Studio - Aexpmil Formation
Re : intégrer du xml dans flash
« Réponse #9 le: mai 08, 2009, 18:10:23 pm »

Bonjour,

Pour faire une galerie une autre approche que le fichier xml est possible. Il suffit de faire un code en asp ou php qui lit le contenu du dossier contenant les images et passe les noms des fichiers a une variable tableau dans ActionScript. Ensuite le tableau permet de charger les images les unes après les autres par un URLRequest et un Loader.

Avantage : pas besoin de mettre a jour un fichier xml. Juste ajouter des images dans le dossier.

Le seul défaut c'est qu'il n'est pas possible de mettre des commentaires pour chaque image.


Bon courage.....
« Modifié: mai 09, 2009, 06:50:30 am par RMistral (Wisi) »
IP archivée
Savoir mal est pire qu'ignorer
 



Wisibility est un sité dédié à la formation aux métiers l’image. Vous y trouverez différentes ressources vous aidant à maîtriser les logiciels graphiques tels que Photoshop, Lightroom, Illustrator, InDesign, Flash… Aujourd’hui, Wisibility réunie plus d'une vingtaine d’experts, intervenant en Entreprise pour former graphistes, webdesigners, développeurs web, photographes, monteurs, trucistes…
Depuis 2006 nous nous sommes spécialisés dans les tutoriels vidéos permettant de se former à distance. Notre forum très actif, géré par une équipe de bénévoles répondra à vos demandes. Vous pourrez également profiter de nos émissions et reportages sur la Wisi TV.
Contact - Wisibility est une marque déposée

Blog - Tutoriels - Wisi TV - Forum