begin process at 2012 05 26 16:12:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Flash

 > 

Archives

 > 

Flash & les images

 > 

Chargement d'images avec un movieClipLoad


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Chargement d'images avec un movieClipLoad

vendredi 14 avril 2006 à 17:11:58 | Chargement d'images avec un movieClipLoad

OminiuS

voila, mon petit diaporama evolue grave a votre aide, et j'ai maintenant franchie encore une etape et donc d'autres points obscurs apparaissent.

j'essaie de charger TOUTES mes images dès le débuts de mon script(à partir d'un xml), mais je remarque qu'avec les affichages en sortie qu'il ne s'effectue pas tout au debut mais apres ma premiere instruction imageNext()
voici mon XML
<?xml version="1.0"?>
<IMAGES>
    <IMG nom = "30M1"    laUrl = "C:\Documents and Settings\Tiago Marques\Mes documents\Flash\Test Diapo en cours\petites images\grosse image1.jpg" link="http://blog.franto.com/wp-images/wallpaper.jpg"/>
    <IMG nom = "30M2"    laUrl = "C:\Documents and Settings\Tiago Marques\Mes documents\Flash\Test Diapo en cours\petites images\grosse image1.jpg" link="http://blog.franto.com/wp-images/wallpaper.jpg"/>
    <IMG nom = "30M3"    laUrl = "C:\Documents and Settings\Tiago Marques\Mes documents\Flash\Test Diapo en cours\petites images\grosse image1.jpg" link="http://blog.franto.com/wp-images/wallpaper.jpg"/>
    <IMG nom = "30M4"    laUrl = "C:\Documents and Settings\Tiago Marques\Mes documents\Flash\Test Diapo en cours\petites images\grosse image1.jpg" link="http://blog.franto.com/wp-images/wallpaper.jpg"/>
    <IMG nom = "30M5"    laUrl = "C:\Documents and Settings\Tiago Marques\Mes documents\Flash\Test Diapo en cours\petites images\grosse image1.jpg" link="http://blog.franto.com/wp-images/wallpaper.jpg"/>
</IMAGES>


mon script sur un calque:

//traitement de fichier XML
FichierXML = new XML();//création de l'objet XML
FichierXML.ignoreWhite = true;//ignorer les sauts de ligne
//pour recuperer le XML a distance, Objet LoadVars vide
monLoadVars = new LoadVars();
//On charge le fichier XML avec l'instruction sendAndLoad du LoadVars
//mettre l'url de serveur ou est le fichier
monLoadVars.sendAndLoad("LesProduits.xml", FichierXML);
//monLoadVars.sendAndLoad("http://   LesProduits.xml", FichierXML);

//FichierXML.load("LesProduits.xml");//charge le document
_root.stop();
//tab
image = new Array();//liens
lien = new Array();//liens
nom = new Array();//nom des images
//creation du diaporama conteneur
this.createEmptyMovieClip("diaporama", 0);
//position du clip
diaporama._y = 10;
diaporama._x = 10;
this.createTextField("pourcentage", this.getNextHighestDepth(), 0, 10, 250, 70);
pourcentage.border = true;
pourcentage.text = "En attente";
pourcentage._visible = true;
var maxImages;
        // création de l'écouteur
        var eLoaderIntro = new Object();
FichierXML.onLoad = function(sucess) {
    if (sucess) {
        imageIndex = -1;//image en cour
        maxImages = this.firstChild.childNodes.length;//le nombre d'images dans le répertoire

        //création du MovieClipLoader
        var eMovieClipLoader:MovieClipLoader = new MovieClipLoader();
       
        for(i = 0; i<maxImages; i++){
            trace("iterateur = " + i);
            //recupére le nom et le lien du fichier
            image[i] = this.firstChild.childNodes[i].attributes.laUrl;
            nom[i] = this.firstChild.childNodes[i].attributes.nom;
            if(this.firstChild.childNodes[i].attributes.link){
                lien[i] = this.firstChild.childNodes[i].attributes.link;
            }
            //var i = 0;
            // Création d'un clip vide
            diaporama.createEmptyMovieClip("image"+i, 10 + i);
            
            //création du MovieClipLoader
            eMovieClipLoader.addListener(eLoaderIntro);
            eMovieClipLoader.loadClip(image[i], _root.diaporama["image"+i]);//j'aimerai que le chargement des images soient commencé, chargée et fini
ici
        }
        trace("total Image = " + maxImages)
        _root.play();
        delete FichierXML;
        imageNext();
    }else{
        trace("Fichier non chargé");
    }
};
//image suivante
var refOut;
var refInt;
function imageNext(){//Or il commence apres un premier appel de cette fonction oO
    if(imageIndex == -1){
        maxImages--;//a cause du decalage des images numerotées de 0 a n
    }
    //index de l'image suivante
    imageIndex++;
    //si l'index est sup au nb d'image, on reprend a 0
    if(imageIndex > maxImages){
       imageIndex = 0;
    }
    //1 pour ne pas voir completement le fond du diapo
    diaporama["image"+imageIndex]._alpha = 1;
   
    //quand on appuie, rediriger vers un lien
    diaporama.onRelease = function() {
        if(lien[imageIndex]){//si le lien existe ou peu cliquer
            getURL(lien[imageIndex], "_blank");
            trace("onRelease => " + lien[imageIndex]);
        }
    }
    //nom du produit
    getNomImage(imageIndex);
    //appel du fondu
    refInt = setInterval(FadeIn, 50);
    trace("Image courrante = " + imageIndex);
}
//fondu du fond vers l'image
function FadeIn(){
    diaporama["image"+imageIndex]._alpha += 4;
    if(diaporama["image"+imageIndex]._alpha >= 100){
        diaporama["image"+imageIndex]._alpha = 100;
        //suppression de variables internes
        clearInterval(refInt);
        //en ms : 1000 -> 1s)
        refOut = setInterval(FadeOut, 50);
    }
}
//fondu de l'image vers le fond
function FadeOut(){
    diaporama["image"+imageIndex]._alpha -= 4;
    //10 pour ne pas voir completement le fond du diapo
    if(diaporama["image"+imageIndex]._alpha <= 1){
        diaporama["image"+imageIndex]._alpha = 0;
        clearInterval(refOut);
        imageNext()
    }
}
//le texte contenant le nom du produit
function getNomImage(i){
    //creation d'un TextField
    this.createTextField("affichage", this.getNextHighestDepth(), 0, 130, Stage.width, 20);
    //affectation du texte
    if(pourcentage.text != "En attente")
        affichage.text = nom[i];
    //creation d'un format de style
    format = new TextFormat();
    format.color = 0xff0000;//rouge
    format.align = "center";//texte centré
    //application du style
    affichage.setTextFormat(format);
}
//arreter le defilement
diaporama.onRollOver = function(){
    clearInterval(refOut);
    clearInterval(refInt);
    //on raffiche l'image en entier
    diaporama["image"+imageIndex]._alpha = 100;
    trace("Stop");
}
//reprendre la photo puis le defilement
diaporama.onRollOut = function(){
    refInt = setInterval(FadeIn, 50);
    trace("Ou encore");
}
//methode de l'ecouteur
eLoaderIntro.onLoadStart = function(p_mcCible:MovieClip){
   pourcentage.text += newline + "Le chargement de " + p_mcCible._name + " commence.";
   //Barre._xscale = 0;
   trace("onLoadStart = " + p_mcCible._name);
}
eLoaderIntro.onLoadProgress = function(p_mcCible:MovieClip, p_nBytesLoaded:Number, p_nBytesTotal:Number):Void{
    var p:Number = Math.round((p_nBytesLoaded)/(p_nBytesTotal)*100);
    //pourcentage.text += newline + "Chargement à " + p + " % (image "+i+"/"+(maxImages+1)+")";
    pourcentage.text += newline + "onLoadProgress = " + p + " % pour "+p_mcCible._name;
    //pourcentage.text = "En attente...";
    trace("onLoadProgress = " + p + " % pour "+p_mcCible._name);
}

eLoaderIntro.onLoadComplete = function(p_mcCible:MovieClip) {
    //pourcentage.text = "Le chargement du fichier " + p_mcCible._name + " sur le disque est terminé.";
    pourcentage._visible = false;
    trace("onLoadComplete = " + p_mcCible._name);
}
eLoaderIntro.onLoadInit = function(p_mcCible:MovieClip):Void  {
    //taille de l'image
    p_mcCible._width = 150;
    p_mcCible._height = 150;
    //image centrée
    diaporama._x = (Stage.width - p_mcCible._width)/2;
    diaporama._y = (Stage.height - p_mcCible._height)/2;
    //cacher le clip
    p_mcCible._alpha = 0;
    trace("onLoadInit = "+p_mcCible._name);
}
eLoaderIntro.onLoadError = function(p_mcCible:MovieClip, p_sErrorCode:String, p_nHTTPStatus:Number){
    var erreur:String = "Une erreur est survenue pendant le chargement..."+newline;
        erreur += " > fichier : " + p_mcCible._name + newline;
        erreur += " > code de l'erreur : " + p_sErrorCode + newline;
        erreur += " > status HTTP : " + p_nHTTPStatus;
    pourcentage.text = erreur;
    trace("onLoadError = " + p_mcCible._name);
}

voici ce que j'ai en sortie:
iterateur = 0
iterateur = 1
iterateur = 2
iterateur = 3
iterateur = 4
total Image = 5
Image courrante = 0//j'aimerai que le chargement s'effectue avant ce premier appel -_-
onLoadStart = image0
onLoadProgress = 1 % pour image0
...etc
onLoadProgress = 100 % pour image0
onLoadComplete = image0
onLoadStart = image1
onLoadProgress = 1 % pour image1
...etc
onLoadProgress = 100 % pour image1
onLoadComplete = image1
onLoadStart = image2
onLoadProgress = 1 % pour image2
...etc
onLoadProgress = 100 % pour image2
onLoadComplete = image2
onLoadStart = image3
onLoadProgress = 1 % pour image3
...etc
onLoadProgress = 100 % pour image3
onLoadComplete = image3
onLoadStart = image4
onLoadProgress = 1 % pour image4
...
onLoadProgress = 100 % pour image4
onLoadComplete = image4
onLoadInit = image4
onLoadInit = image3
onLoadInit = image2
onLoadInit = image1
onLoadInit = image0
Image courrante = 1
Image courrante = 2

Comment puis-je faire merci :D

OminiuS



Cette discussion est classée dans : function, image, diaporama, imageindex, mccible


Répondre à ce message

Sujets en rapport avec ce message

image lien vers une page web a partir d'un diaporama automatique [ par OminiuS ] Donc mon probleme que dans mon diaporama, lors du defilement d'image, j'aimerais cliquer sur celle-ci afin de faire apparaitre une page web. pouvez vo insérer un jpg de ma bibliothèque dans un clip par AS [ par fabzz007 ] Bonjour à tous,je suis en train de faire une sorte de galerie de photo en flash à titre personnel. Je souhaite obtenir une anim réutilisable sans trop insérer un jpg de ma bibliothèque dans un clip par AS [ par fabzz007 ] Bonjour à tous,je suis en train de faire une sorte de galerie de photo en flash à titre personnel. Je souhaite obtenir une anim réutilisable sans trop zooms multiples et progressifs + drag sur une image [ par labobinette94 ] Bonjour tout le monde, J'essaye de faire un zoom (et dézoom) progressif qui se fait tant qu'on appuie sur un bouton. Quand on relache le bouton, on a Addlistener multiples et dynamiques [ par worraps ] accrocher vos ceinturesle décor pour que vous compreniez le pourquoi du comment...je suis en train de réaliser un CMS 100% Flashj'ai donc réalisé un é flash mx son sur images diaporama [ par papalima91 ] Hello ! J'ai un diaporama et je veux mettre un extrait mp3   de chanson, d'une durée environ 10", sur chaque image. Il faut que la lecture du son prop Arret de la tete de lecture dans une dia d'un diaporama [ par Lechimiste420 ] J'ai créé un diaporama à partir du fichier diaporama fourni par Flax MX 2004.Sur une diapositive, sur l'image 1, j'ai par exemple écrit un texte "A".S problème pour atteindre une image située dans un clip [ par neucneu ] Bonjour,J'ai un big problème:je vais essayer d'etre le plus clair possibledans mon scénario principal, j'ai deux clips:-le premier situé à la frame 1, problème nombre d'image diaporama [ par panterellas ] Bonjour à tous et à toutes !Voilà on va dire que je suis une semi débutante en flash car cela fait pas mal de temps que je n'ai pas pratiqué, et je su Popup depuis xml [ par geraldinechx ] Bonjour,J'utilise un fichier xml pour une gallerie photo. Le code suivant permet d'appeler le fichier xml ainsi qu'un lien lorsque l'on clique sur une


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales