Diaporama flash_première image

Résolu
Bonjour, j'ai récupéré un diaporama qui fonctionne très bien, le seul soucis, c'est que je voudrais qu'il y ai une image quand on arrive dessus. Pour l'instant, il faut cliquer sur la flèche droite pour avoir la première image, et ça ne me va pas. Si quelqu'un pouvais jeter un cou d'oeil et me donner son avis... ce serait bien cool :

var limite:Number = 450;
var imgAgrandi:Boolean = false;
var numImg:Number = 0;
titreImg = "Cliquez Suivant";

btPrecedente._visible = false;

verifLimit = function() {
if (numImg>= 13) {
btSuivante._visible = false;
}
else {
btSuivante._visible = true;
}

if (numImg <= 1) {
btPrecedente._visible = false;
}
else {
btPrecedente._visible = true;
}
}//verifLimit()

btPrecedente.onRelease = function () {
numImg--;
traitement();
}//onRelease

btSuivante.onRelease = function () {
numImg++;
traitement();
}//onRelease

traitement = function() {
verifLimit();
titreImg = 'images/deneuville/Image00'+numImg+'.jpg';

this.createEmptyMovieClip('image', 1);
this.image.loadMovie(titreImg);
this.image._alpha = 0;
this.chargeur.image = this.image;
this.chargeur.onEnterFrame = function() {
this.barre._xscale = ((image.getBytesLoaded()/image.getBytesTotal())*100);
if ((image.getBytesLoaded() == image.getBytesTotal()) && (image.getBytesTotal()>0)) {
//Taille Photo
if(image._height>= limite && image._height> image._width) {
image._height = image._height / (image._width / limite);
image._width = limite;
}
else {
image._width = image._width / (image._height / limite);
image._height = limite;
}

//Centrage Photo
image._x = (Stage.width - image._width)/2;
image._y = (Stage.height - image._height)/2;

//Transition opacité
image._alpha += 5;
if(image._alpha>= 100) {
delete image.onEnterFrame;
}//if

image.onRelease = function () {
if (imgAgrandi) {
limite = 450;
imgAgrandi = false;
}
else {
limite = 480;
imgAgrandi = true;
}
}//onRelease
}//if
}//onEnterFrame

}//traitement()

En fait je sais pas où est-ce que je dois modifier le code pour qu'il affiche une image dès qu'on arrive dessus..Merci d'avance !
cciloo
Configuration: Mac OS X
Safari 1.3

5 réponses

  1. ben dans ta première frame a la fin, normalement tu ajoute ça

    numImg = 1;
    traitement();

    on met le numéro de l'image a afficher à 1
    on appel la fonction "traitement" qui a première vue s'occupe de charger l'image

    0
    1. Merci mimiste,
      je vais tester ça dans les plus brefs délais :-)
      0
    2. bon, j'ai compris ton bout de code mimiste, le truc, c'est que mes images sont pas ds mon dossier flash mais dans un dossier extérieur, je lui dit d'aller les chercher.. donc, je crois pas que ça marche comme ça, peut être que je me trompe...
      0
  2. Ben, c'est sur cette ligne

    titreImg = 'images/deneuville/Image00'+numImg+'.jpg';

    de la fonction traitement que le lien vers l'image est fait non ? Donc y ne devrai pas y avoir de souci, si tu defini le numImg à 1, il ira chercher l'image

    images/deneuville/Image001.jpg

    0
    1. Oui c'est sur cette ligne que j'avais fait la modif... mais du coup, quand je clique sur la page ou se trouve mon diaporama, il ne me l'affiche pas non plus directement, il faut toujours que je clique sur le bouton 'image suivant' (btsuivante) pour avoir une image. Quand j'écris le code que tu m'a conseillé, ce qu'il comprend c'est qu'à chaque fois que je cliquerai sur le btsuivante, il devra afficher l'image 1... donc un peu barbant comme diaporama, lol...
      0
    2. @ccilooTon code sur la frame au final doit ressembler à ça

      var limite:Number = 450;
      var imgAgrandi:Boolean = false;
      var numImg:Number = 0;
      titreImg = "Cliquez Suivant";
      
      btPrecedente._visible = false;
      
      verifLimit = function() {
      if (numImg>= 13) {
      btSuivante._visible = false;
      }
      else {
      btSuivante._visible = true;
      }
      
      if (numImg <= 1) {
      btPrecedente._visible = false;
      }
      else {
      btPrecedente._visible = true;
      }
      }//verifLimit()
      
      
      btPrecedente.onRelease = function () {
      numImg--;
      traitement();
      }//onRelease
      
      btSuivante.onRelease = function () {
      numImg++;
      traitement();
      }//onRelease
      
      traitement = function() {
      verifLimit();
      titreImg = 'images/deneuville/Image00'+numImg+'.jpg';
      
      this.createEmptyMovieClip('image', 1);
      this.image.loadMovie(titreImg);
      this.image._alpha = 0;
      this.chargeur.image = this.image;
      this.chargeur.onEnterFrame = function() {
      this.barre._xscale = ((image.getBytesLoaded()/image.getBytesTotal())*100);
      if ((image.getBytesLoaded() == image.getBytesTotal()) && (image.getBytesTotal()>0)) {
      //Taille Photo
      if(image._height>= limite && image._height> image._width) {
      image._height = image._height / (image._width / limite);
      image._width = limite;
      }
      else {
      image._width = image._width / (image._height / limite);
      image._height = limite;
      }
      
      //Centrage Photo
      image._x = (Stage.width - image._width)/2;
      image._y = (Stage.height - image._height)/2;
      
      //Transition opacité
      image._alpha += 5;
      if(image._alpha>= 100) {
      delete image.onEnterFrame;
      }//if
      
      image.onRelease = function () {
      if (imgAgrandi) {
      limite = 450;
      imgAgrandi = false;
      }
      else {
      limite = 480;
      imgAgrandi = true;
      }
      }//onRelease
      }//if
      }//onEnterFrame
      
      }//traitement() 
      
      numImg = 1;
      traitement();
      


      Les deux lignes à rajouter c'est tout a la fin pour qu'il appel la fonction traitement des l'ouverture
      0
    3. @Mimisteouaouh !! merci bcp ! pourquoi faire simple quand on peut faire compliqué...
      0
  3. Bonjour,

    J'ai vue ce poste j'ai voulu tester mais je n'arrive pas a faire le lien vers le dossier externe. Je comprend pas où je fais une erreur. Si vous pouviez m'expliquer la ligne ou justement on note le lien, ça serait super super. Merci d'avance
    0
    1. Bonjour

      c'est cette ligne

      titreImg = 'images/deneuville/Image00'+numImg+'.jpg';

      les images sont placée dans le repertoire images/deneuville/ donc c'est la que tu dois le changer

      Pour que ça marche leur nom est de cette forme :

      Image001.jpg
      Image002.jpg
      etc ...

      attention ça fonctionne seulement en ligne et pas en local
      0
      1. Merci, je comprend pourquoi je ne voie pas si ça ne fonctionne que en ligne. C'est super sympa ^^
        0