Forums Développement Multimédia

Aller au contenu

2 fonctions identique mes résultat différents

CODE Actionscript

5 réponses à ce sujet

#1 maniT4c

    Ceinture Noire

  • Members
  • PipPipPipPipPipPipPip
  • 221 messages

Posté 09 January 2003 - 04:12 AM

G creer une galerie en XML.
J'affiche mes miniatures en utilisant le tuto pour préload les images et sa fonctionne bien sa me permet de les redimmensionner. Ensuite g utiliser la meme fonction pour préload mes images en grande tailles (qui s'affiche lorsque l'on clique sur une miniature).

Mes images s'affiche bel et bien en grand mais... j'ai pas l'impression que le préload fonctionne pour les images en taille réelle pourtant g utiliser exactement la même fonction.

Si quelqu'un voit ou g fait l'erreur wink.gif

vala le code

CODE




//proto pour miniature

MovieClip.prototype.loadFile = function(file) {



conteneur = this.createEmptyMovieClip("conteneur", 100);



pic = conteneur.createEmptyMovieClip("img", 102);





crt = conteneur.createEmptyMovieClip("control", 103);

pic.loadMovie(file);

pic.cnt = 0;



crt.onEnterFrame = function() {

 pic._visible = false;

 transfert = Math.round(pic.getBytesLoaded()*100/pic.getBytesTotal());

 

 if (transfert>=100) {

  pic.cnt++;

 

  if (pic.cnt>1) {

   

   delete crt.onEnterFrame;

   pic._visible = true;

   x=((pic._height*150)/pic._width);

   

   pic._height=x;

   pic._width=150;

   pic._y=pos+150;

   pic._x = -pic._width/2;

   

   

   pos=pos+x+25;

      }

     }

  };

};



//proto pour image taille réelle

MovieClip.prototype.loadFile2 = function(file2) {



conteneur2 = this.createEmptyMovieClip("conteneur2", 110);



big_pic = conteneur2.createEmptyMovieClip("img2", 112);





crt2 = conteneur2.createEmptyMovieClip("control2", 113);

big_pic.loadMovie(file2);

pic.cnt2 = 0;







crt2.onEnterFrame = function() {

 big_pic._visible = false;

 transfert2 = Math.round(big_pic.getBytesLoaded()*100/big_pic.getBytesTotal());

 

 if (transfert2>=100) {    

  pic.cnt2++;

 

  if (pic.cnt2>1) {

   

   delete crt2.onEnterFrame;

   big_pic._visible = false;

   

   

   z=((big_pic._height*150)/big_pic._width);

   

   big_pic._height=z;

   big_pic._width=150;

   big_pic._y=pos-big_pic._height;

   big_pic._x = -big_pic._width/2;

   

   trace("passage");

   pos2=pos2+150;

      }

     }

  };

};



//récupération des donnée du XML

var galleriev = gallerieXml.firstChild.childNodes;

var lon = galleriev.length;









//initialisation des variable

pos=0;

pos2=0;

i=-1;



clip.onEnterFrame= function (){

     

     nom = galleriev[i].attributes.nom;

     _root.mini.createEmptyMovieClip("rec"+i, i+10);

     

 

     _root.mini["rec"+i].loadfile(nom);

     

  _root.mini["rec"+i].onPress = function () {

 

   nom_mc=this._name;

 

  num_img=nom_mc.substr(3, 3);

 

  nom_img = galleriev[num_img].attributes.nom;

 

 _root.affiche.createEmptyMovieClip(big, 20);

 

  _root.affiche[big].loadfile2(nom_img);

 

 

 };

 

 

 

     i++;

     if (i>lon) {delete clip.onEnterFrame};

     

  }





stop();



#2 neolao

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 3827 messages

Posté 09 January 2003 - 04:15 AM

dans loadFile2 moi je vois des fois des pic
et ce clip n'existe pas

#3 maniT4c

    Ceinture Noire

  • Members
  • PipPipPipPipPipPipPip
  • 221 messages

Posté 09 January 2003 - 04:21 AM

a part les pic.cnt2 je voit pas de pic qui devrait s'appeler big_pic ??? ou alors je fatigue lol wink.gif

normalement c pas genant que pic.cnt2 s'appelle pas big_pic.cnt2 mais de toutes façons je vien de les renomer en big_pic.cnt2 tous et ... sa change rien ouinn sad.gif.

Le plus ennervant c que c tous con je suit sur...

#4 ekameleon

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 20167 messages

Posté 09 January 2003 - 12:34 PM

Question ? tu fais 2 prototypes pourquoi faire exactement? c'est quoi le but ? Tu peux pas utiliser le même ? tu as vu mon tuto perso à ce sujet ? il y en a 2 ? smile.gif
bye smile.gif

#5 maniT4c

    Ceinture Noire

  • Members
  • PipPipPipPipPipPipPip
  • 221 messages

Posté 10 January 2003 - 00:34 AM

ben le premier proto me sert pour les miniature et le second pour afficher l'image en grande taille, mais je l'est pas encore completement modifier car je veut que l'image soit redimensionner à une certaine taille si elle est trop grande et qu'elle ne bouge pas si elle est trop petite.

Mais je ne voit pas comment utiliser un seul proto pour les miniature ET pour l'image de grande taille, j'avoue que sa me simplifierai la tache lol smile.gif


sinon vivi g bien vu ton proto sur le sujet mais je comprenais mieux celui la c pour sa que jles utiliser.

Mais utiliser un seul proto pour mes miniature et mon image de grande taille sa m'interresse sa reglerai surement mon probleme au passage? Mais jvoit pas la démarche a suivre sad.gif

#6 ekameleon

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 20167 messages

Posté 10 January 2003 - 13:18 PM

Tu peux smile.gif mais faut avant tout que tu comprennes que le prototype permet de faire un preload d'une image .. le tout est qu'à la fin tu lances une fonction avec un paramètre qui indiquera si c'est une grande ou petite image par exemple et de faire ce qu'il faut smile.gif Faire 2 prototypes pour la même chose va à l'encontre même de l'utilité d'un prototype smile.gif
Faut penser en terme de "DIVISER pour reigner" et pas multiplier wink.gif
bye smile.gif



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP