Accueil > Forum > > > > loadMovie (); et XML
loadMovie (); et XML
mercredi 25 avril 2007 à 15:04:15 |
loadMovie (); et XML

Orange73
|
Yop les gens ! Bon voilà, j'ai une anim principal dans laquelle je fais appel à un swf externe qui contient un AS permettant de faire un diaporama images aléatoires avec fondu via XML... Ce diapo fonctionne très bien... Malheureusement lorque sur l'anim principal je fais appel à ce diapo via loadMovie (); les transitions ne fonctionne pas... et une seul image apparait. Voici les Codes AS : Anim principal (AS loadMovie qui est dans un clip "header") :stop();
this.createEmptyMovieClip("container", this.getNextHighestDepth()); //getNextHighestDepth() n'est pas disponible pour les versions < 7 (pensez à mettre une profondeur (nombre) [merci Raz-L])
container.loadMovie("Header.swf"); this.onEnterFrame = function() { container._x = -328; container._y = -137; delete this.onEnterFrame; }
Anim Externe (Diapo) :
stop();
//Création des variables var images:Array = new Array(); var param:Array = new Array(); var imageActu:Number; var imageNext:Number; var annee:Date = new Date(); //Viariables des intervals var interAlpha:Number; var interImage:Number; var interTest:Number; //Temps de pause par défaut var timeStart:Number = 1000; var timeBetween:Number = 500; //Variable pour la transition alpha var val_alpha:Number = 0; //Création des flags var image1:Boolean = false; var image2:Boolean = false; var init:Boolean = true;
//MovieClip Conteneur1 var conteneur1:MovieClip = this.createEmptyMovieClip("conteneur1", 2); var mclListener1:Object = new Object(); var mcl1:MovieClipLoader = new MovieClipLoader(); mcl1.addListener(mclListener1); //MovieClip Conteneur2 var conteneur2:MovieClip = this.createEmptyMovieClip("conteneur2", 1); var mclListener2:Object = new Object(); var mcl2:MovieClipLoader = new MovieClipLoader(); mcl2.addListener(mclListener2);
//Chargement du fichier XML contenant la liste des photos var diapo:XML = new XML(); diapo.ignoreWhite = true; diapo.load("diapo.xml"); //Traitement une fois le chargement effectuer diapo.onLoad = function(success:Boolean) { if(success){ //Creation des noeud var noeudImage:XMLNode = this.firstChild.childNodes[0]; var noeudParam:XMLNode = this.firstChild.childNodes[1]; for (var i:Number = 0; i<noeudImage.childNodes.length; i++){ var temp:Object = new Object(); temp.titre = noeudImage.childNodes[i].attributes.titre; temp.comm = noeudImage.childNodes[i].attributes.comm; temp.xTxt = noeudImage.childNodes[i].attributes.xTxt; temp.yTxt = noeudImage.childNodes[i].attributes.yTxt; images.push(temp); } for (var i:Number = 0; i<noeudParam.childNodes.length; i++){ var temp:Object = new Object(); temp.valeur = noeudParam.childNodes[i].attributes.valeur; temp.comm = noeudParam.childNodes[i].attributes.comm; param.push(temp); } imageInit(); } }
imageInit = function(){ if((param[0].valeur == "true")|(param[0].valeur == undefined)){ imageActu = randomNum(0, images.length-1); imageNext = randomNum(0, images.length-1); imageRandom(); }else{ imageActu = 0; imageNormal(); } if(param[1].valeur != undefined){timeStart = param[1].valeur;} if(param[2].valeur != undefined){timeBetween = param[2].valeur;} mcl1.loadClip(images[imageActu].titre, conteneur1); mcl2.loadClip(images[imageNext].titre, conteneur2); }
mclListener1.onLoadComplete = function(target:MovieClip):Void { image1 = true; if(init){ if(image2){ init = false; interImage = setInterval(_root,"imageSwap",timeStart); } }else{ conteneur2.swapDepths(conteneur1); mcl2.loadClip(images[imageNext].titre, conteneur2); } }
mclListener2.onLoadComplete = function(target:MovieClip):Void { image2 = true; if(init){ if(image1){ init = false; interImage = setInterval(_root,"imageSwap",timeStart); } }else{ interImage = setInterval(_root,"imageSwap",timeBetween); } }
imageSwap = function(){ clearInterval(interImage); interAlpha = setInterval(this,"imageAlpha",6); }
imageAlpha = function(){ if(val_alpha < 100){ conteneur1._alpha = (100-val_alpha); conteneur2._alpha = val_alpha; val_alpha += 1; } else{ clearInterval(interAlpha); val_alpha = 0; imageActu = imageNext; if(param[0].valeur == "true"){ imageRandom(); }else{ imageNormal(); } conteneur1.swapDepths(conteneur2); conteneur1._alpha = 100; mcl1.loadClip(images[imageActu].titre, conteneur1); } }
imageRandom = function(){ while(imageActu == imageNext){ imageNext = randomNum(0, images.length-1); } }
imageNormal = function(){ if(imageActu == images.length-1){ imageNext = 0; }else{ imageNext = imageActu+1; } }
randomNum = function(min:Number, max:Number):Number{ var num:Number = Math.floor(Math.random() * (max - min + 1)) + min; return num; }
Fichier XML :
<?xml version="1.0" encoding="iso-8859-1"?> <DIAPO> <LISTE nom='Liste images' comm='Liste des images.'> <IMAGE titre='1.jpg' comm='Image 1'/> <IMAGE titre='2.jpg' comm='Image 2'/> <IMAGE titre='3.jpg' comm='Image 3'/> <IMAGE titre='4.jpg' comm='Image 4'/> <IMAGE titre='5.jpg' comm='Image 5'/> <IMAGE titre='6.jpg' comm='Image 6'/> <IMAGE titre='7.jpg' comm='Image 7'/> <IMAGE titre='8.jpg' comm='Image 8'/> <IMAGE titre='9.jpg' comm='Image 9'/> <IMAGE titre='10.jpg' comm='Image 10'/> <IMAGE titre='11.jpg' comm='Image 11'/> <IMAGE titre='12.jpg' comm='Image 12'/> <IMAGE titre='13.jpg' comm='Image 13'/> <IMAGE titre='14.jpg' comm='Image 14'/> </LISTE> <PARAM nom='ParamDiapo' comm='Paramétres du diaporama'> <RANDOM valeur='true' comm='Ordre des images'/> <TIME_START valeur='1000' comm='Tempo de démarrage'/> <TIME_BETWEEN valeur='4000' comm='Tempo entre les images'/> </PARAM> </DIAPO>

|
|
mercredi 25 avril 2007 à 17:02:29 |
Re : loadMovie (); et XML

Orange73
|
Je viens d'essayer de mettre directement mon code Diapo dans mon anim principal. Ok sa marche... Mais je souhaiterai le placer dans un clip vide... mais là sa marche plus ! Merci de m'éclairer ! Je redonne le code : //Création des variables var images:Array = new Array(); var param:Array = new Array(); var imageActu:Number; var imageNext:Number; var annee:Date = new Date(); //Viariables des intervals var interAlpha:Number; var interImage:Number; var interTest:Number; //Temps de pause par défaut var timeStart:Number = 1000; var timeBetween:Number = 500; //Variable pour la transition alpha var val_alpha:Number = 0; //Création des flags var image1:Boolean = false; var image2:Boolean = false; var init:Boolean = true;
//MovieClip Conteneur1 var conteneur1:MovieClip = this.createEmptyMovieClip("conteneur1", 2); var mclListener1:Object = new Object(); var mcl1:MovieClipLoader = new MovieClipLoader(); mcl1.addListener(mclListener1);
//MovieClip Conteneur2 var conteneur2:MovieClip = this.createEmptyMovieClip("conteneur2", 1); var mclListener2:Object = new Object(); var mcl2:MovieClipLoader = new MovieClipLoader(); mcl2.addListener(mclListener2);
this.onEnterFrame = function() { conteneur1._x = 100; conteneur1._y = 100; conteneur2._x = 100; conteneur2._y = 100; delete this.onEnterFrame; }
//Chargement du fichier XML contenant la liste des photos var diapo:XML = new XML(); diapo.ignoreWhite = true; diapo.load("diapo.xml"); //Traitement une fois le chargement effectuer diapo.onLoad = function(success:Boolean) { if(success){ //Creation des noeud var noeudImage:XMLNode = this.firstChild.childNodes[0]; var noeudParam:XMLNode = this.firstChild.childNodes[1]; for (var i:Number = 0; i<noeudImage.childNodes.length; i++){ var temp:Object = new Object(); temp.titre = noeudImage.childNodes[i].attributes.titre; temp.comm = noeudImage.childNodes[i].attributes.comm; temp.xTxt = noeudImage.childNodes[i].attributes.xTxt; temp.yTxt = noeudImage.childNodes[i].attributes.yTxt; images.push(temp); } for (var i:Number = 0; i<noeudParam.childNodes.length; i++){ var temp:Object = new Object(); temp.valeur = noeudParam.childNodes[i].attributes.valeur; temp.comm = noeudParam.childNodes[i].attributes.comm; param.push(temp); } imageInit(); } }
imageInit = function(){ if((param[0].valeur == "true")|(param[0].valeur == undefined)){ imageActu = randomNum(0, images.length-1); imageNext = randomNum(0, images.length-1); imageRandom(); }else{ imageActu = 0; imageNormal(); } if(param[1].valeur != undefined){timeStart = param[1].valeur;} if(param[2].valeur != undefined){timeBetween = param[2].valeur;} mcl1.loadClip(images[imageActu].titre, conteneur1); mcl2.loadClip(images[imageNext].titre, conteneur2); }
mclListener1.onLoadComplete = function(target:MovieClip):Void { image1 = true; if(init){ if(image2){ init = false; interImage = setInterval(_root,"imageSwap",timeStart); } }else{ conteneur2.swapDepths(conteneur1); mcl2.loadClip(images[imageNext].titre, conteneur2); } }
mclListener2.onLoadComplete = function(target:MovieClip):Void { image2 = true; if(init){ if(image1){ init = false; interImage = setInterval(_root,"imageSwap",timeStart); } }else{ interImage = setInterval(_root,"imageSwap",timeBetween); } }
imageSwap = function(){ clearInterval(interImage); interAlpha = setInterval(this,"imageAlpha",6); }
imageAlpha = function(){ if(val_alpha < 100){ conteneur1._alpha = (100-val_alpha); conteneur2._alpha = val_alpha; val_alpha += 1; } else{ clearInterval(interAlpha); val_alpha = 0; imageActu = imageNext; if(param[0].valeur == "true"){ imageRandom(); }else{ imageNormal(); } conteneur1.swapDepths(conteneur2); conteneur1._alpha = 100; mcl1.loadClip(images[imageActu].titre, conteneur1); } }
imageRandom = function(){ while(imageActu == imageNext){ imageNext = randomNum(0, images.length-1); } }
imageNormal = function(){ if(imageActu == images.length-1){ imageNext = 0; }else{ imageNext = imageActu+1; } }
randomNum = function(min:Number, max:Number):Number{ var num:Number = Math.floor(Math.random() * (max - min + 1)) + min; return num; }
|
|
vendredi 27 avril 2007 à 10:00:48 |
Re : loadMovie (); et XML

Girou
|
Hello, ton animation externe fait référence à _root interImage = setInterval(_root,"imageSwap",timeStart); par exemple...
Soit tu remplaces tous les _root par autre choses (essayer avec this) Soit tu actives _lockroot sur le clip qui va charger ton animation externe -> en mettant this._lockroot=true au tout début du script externe -> ou alors en mettant container._lockroot=true avant de charger header.swf
@+ 
|
|
mercredi 4 février 2009 à 00:36:22 |
Re : loadMovie (); et XML

Mildek
|
Bravo Girou ! problème résolu grâce à une toute petite ligne de code supplémentaire. Je sais que ma réponse arrive tardivement par rapport aux messages précédents mais je suis tellement content d'avoir trouver une réponse à mon problème ! Bon code !
|
|
Cette discussion est classée dans : images, function, var, temp, number
Répondre à ce message
Sujets en rapport avec ce message
diaporama avec importation aléatoire [ par JackNUMBER ]
bonjour à tous !!j'ai trouvé 2 scripts que j'aimerai combiné.L'un sert à charger une image aléatoirement dans un MovieClip (qu'il créé) qui est conten
Lien sur image dans un diaporama flash ? [ par phobiahz ]
Bonjour a tous !Voila j'ai le code d'un diaporama (fixe mais avec fondu entre les images) dont les images sont chargées dynamiquement a partir d'un fi
Source diaporama ne fonctionne pas [ par fredflash92 ]
Bonjour,j'utilise le script suivant (que j'ai pris sur ce site) qui gère un diaporama avec des fichiers images externes listés dans un fichier XMLen
aide pour un debutant [ par coreangel ]
bonjour je vien de recup sur le site un diaporama (DIAPORAMA XML AVEC FONDU) de hiltonet j aimerai pouvoir lire des annime .swf mais je sais pas comme
relancer un diaporama XML sur un second XML [ par vegetalain ]
Salut tout le monde... alors voilà, je suis dsl mais je ne sais plus où j'ai pris le code dont je vais vous parler :/ snif.Le code suivant permet de c
stopper un carrousel sur un angle prédéfini [ par neuronezero ]
Alors voilà mon problème...J'ai fais un carrousel tout simple en AS2, mais je désirerais faire en sorte que quand je clik sur l'un des objets le carro
Centrer image au bon moment - Diaporama Flash [ par fluf ]
Bonjour,J'ai récupéré le code de HiltOn ( http://www.flashkod.com/codes/DIAPORAMA-XML-AVEC-FONDU_41950.aspx merci HiltOn ) pour réaliser un diapo
scroll ne s'arrête pas au bas du texte [ par Baby Jane ]
Bonjour,J'ai réalisé un vertical scrollbar pour un site entièrement en flash 8. Je souhaite que lorsque le scrollFace est au bas de mon scrollTrack, c
galerie photo qui ne s'arrête pas... [ par amandaaa ]
Bonjour,j'ai un petit souci avec la galerie photo de mon site internet.je suis débutante en action script donc je vous remercie d'avance pour votre ai
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|