IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

Thumbnails et preloader


Sujet :

Flash

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Thumbnails et preloader
    Bonjour a tous, et merci de prendre le temps d'ecouter mon probleme.

    Je vais essayer de bien detailler donc ca sera un peu long.
    J'ai un fichier principale dans lequel se trouve un clip: 'target'.
    Dans ce clip j'utilise loadmovie pour charger d'autre fichiers swf dans lesquels se trouve des galleries de photos.
    Par exemple une de mes gallerie photo se trouve sur Elec.swf
    Elec.swf est donc charge dans le clip 'target'.
    Dans Elec.swf se trouve principalement deux clips: 'thumnails' et 'main'
    Dans thumnails je charge des petites versions des photo, qui lorsque l'on passe la souris dessus, affiche la vraie photo, plus grosse, dans le clip main.
    Pour cela j'utilise des fichiers xml.

    Dans 'thumnails' je charge chaque thumnail dans un clip qui lui est propre, 'thumbholder', et dans ce thumholder je creer encore un autre clip 'thumloader'.

    J'aimerai avoir un preloader qui, une fois terminee, affiche la page completement chargee sans aucun temps de chargement. Car pour le moment il faut attendre a deux moments:
    -lorsque Elec.swf se charge dans la page principale
    -lorsque l'on met la souris sur un thumnail, la vraie image met un certain temps avant de s'afficher dans 'main'.
    J'ai cree un preloader, qui s'affiche assez correctement, mais une fois terminer, la page n'ai pas chargee... et il faut encore attendre lorsque l'on met la souris sur chaque thumnail.

    Voici le code pour le preloader dans la 2ieme image:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    myLoaded = Math.round(getBytesLoaded());
    myTotal = Math.round(getBytesTotal());
    myPercent = myLoaded/myTotal;
    myBar._width = myPercent*150;
    myText = Math.round(myPercent*100)+"%";
    if (myLoaded == myTotal) {
    	gotoAndStop(3);
    } else {
    	gotoAndPlay(1);
    }
    et voici une partie du code a l'image 3 (j'ai omis certain passage inutile qui gere le comportement d'autre element de la page):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    myGallery = new XML();
    myGallery.ignoreWhite = true;
    myGallery.onLoad = function(success) {
    	numimages = this.firstChild.childNodes.length;
    	if(numimages < 7){
    		upArr._visible = false;
    		downArr._visible = false;
    	}
    	spacing = 55;
    	for (i=0; i<numimages; i++) {
    		this.picHolder = this.firstChild.childNodes[i];
    		this.thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i,i);
    		this.thumbHolder._y = i*spacing;
    		this.thumbLoader =
    		this.thumbHolder.createEmptyMovieClip("thumbnail_image", 0);
    		this.thumbLoader.loadMovie(this.picHolder.attributes.thumb);
    		this.thumbHolder.title =
    		this.picHolder.attributes.title;
    		this.thumbHolder.main =
    		this.picHolder.attributes.main;
    		this.thumbHolder._alpha = 60;
    		this.thumbHolder.onRollOver = function() {
    			if((main._ymouse < 324) && (main._ymouse > -7)){
    				main.loadMovie(this.main);
    				title.text = this.title;
    				this._alpha = 100;
    				this._width = this._width + 4;
    				this._height = this._height + 4;
    				this._x = this._x - 2;
    				this._y = this._y - 2;
    			}
    		};
    		this.thumbHolder.onRollOut = function() {
    			if((main._ymouse < 324) && (main._ymouse > -7)){
    				this._alpha = 60;
    				this._width = this._width - 4;
    				this._height = this._height - 4;
    				this._x = this._x + 2;
    				this._y = this._y + 2;
    			}
    		};
    	}
    	main.loadMovie("images/Electronic Equipment/0101 - 02.JPG", "_root.main");
    };
    myGallery.load("elecGallery.xml");
    J'espere que quelqu'un pourra m'aider!
    Merci.

  2. #2
    Membre à l'essai
    Profil pro
    Collégien
    Inscrit en
    Juillet 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11
    Points : 14
    Points
    14
    Par défaut
    Bonsoir tout le monde,Pour que tes images s'affiches directement il faut utiliser du html et tu met le fichier flash dedans et aprés tu cherche un hebergeur asser fort voila.fr ça doit suffir et tu va voir si c'est les images qui te fait ça ou c'est l'hebergeur.

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    mon fichier flash est deja dans une page html.
    Il doit bien y avoir quelque chose qui me permettrai de tout charger pendant que le preloader defile... comme ca c'est fait, ensuite tout est fluide

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2006
    Messages : 58
    Points : 46
    Points
    46
    Par défaut En résumé
    Bonjour,

    Je suis très pressé, car je cheche une sol à mon pb, et voilà un code qui fonctionne ds mon animation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    var mcl:MovieClipLoader = new MovieClipLoader();
    var mclL:Object = new Object();
    _root.createEmptyMovieClip("conteneur",0);
     
     
    mclL.onLoadProgress = function(target,l,t){
    	var x:Number = (l/t)*100;
    	_root.p.text = Math.round(x)+"%";
    }
     
    mclL.onLoadInit = function(){
    	_root.p._visible = false;
    }
     
    mcl.addListener(mclL);
    mcl.loadClip("monFichier.swf", conteneur);
    Ce code marche très bien sur Flash 8 Pro, mais ça n'a pas marché pour moi sur Flash MX 2004. (Je dis pas que ça marche plus sur FMX 2004 !!!)

Discussions similaires

  1. [SWiSHMax] Comment visualiser un preloader en local
    Par 3psilOn dans le forum Flash
    Réponses: 1
    Dernier message: 22/07/2005, 15h43
  2. [FLASH MX] Preload et ... preload
    Par Buzhug dans le forum Flash
    Réponses: 16
    Dernier message: 30/10/2004, 15h59
  3. [MX 2004] Preload
    Par DBBB dans le forum Flash
    Réponses: 12
    Dernier message: 17/03/2004, 21h26
  4. probleme de preload
    Par nesta dans le forum Flash
    Réponses: 4
    Dernier message: 18/12/2003, 15h32
  5. Réponses: 18
    Dernier message: 29/10/2003, 16h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo