[Flash] effet au rollout

Discussion dans 'Web, design' créé par MbK_, 13 Octobre 2004.

Statut de la discussion:
Fermée.
  1. Offline
    MbK_ Etudjant
    slt a tous.

    pour une banniere flash, j'ai fais un Bouton (une petite bande non clicable) et qd le cursuer passe dessus, je lui demande de jouer un clip (qui est la meme bande ou l'opacité diminue petit a petit.)

    je me demandais si il n'y avait pas une maniere plus simple de faire ca. du genre avec un "on(roollover)" et apres reduire l'opacité. et meme chose pour le rollout.

    y a t'il une sorte de dictionnaire ou sont repris toutes les possibilités de modification sur une image (genre flou, opacité, etc)

    Merci a tous.
    MbK_, 13 Octobre 2004
    #1
  2. Online
    RedCross ex membre
    Tu places ton bouton sur la scène principale.
    Tu lui donnes un nom d'instance (dans l'exemple : "monBouton").
    Et tu colles ce code.

    Code:
    on (rollOver) {
    	_root.monBouton._alpha = 100;
    }
    on (rollOut) {
    	_root.monBouton._alpha = 50;
    }
    Tu varie la valeur de l'alpha à ta guise, tu chipotes quoi ;)
    RedCross, 13 Octobre 2004
    #2
  3. Offline
    La Poubelle Elite
    Nop, il veut une animation en dégradé.

    IL y a deux solutions, soit tu utilises onEnterFrame directement dans le code du MovieClip (RMQ: Il ne faut surtout pas utiliser , le composant Bouton qui n'est qu'un simple MovieClip bridé)

    Ce code doit être directement dans le MC lui-même. L'avantage est que ce code sera valable chaque fois que utiliseras ce bouton.

    En résumé :

    onEnterFrame => Evénement qui s'exécute chaque fois que le MC arrive au début de l'animation.

    This => lui-même. En plus clair, que ton MC s'appelle CHarles henri, ou Georges Michael ça ne change rien. Tu l'appelles directement.

    Ce code fait : Affecte un code lorsque on fait un rollover à l'évènement onEnterFrame. Il test une valeur pour l'Alpha (j'ai mis 50 au hasard) et réduit l'opacité de 5. Si l'Alpha est plus petit que 50 il supprime l'évènement onEnterFrame

    Idem pour onRollOver

    Code:
    this.onRollOver = function() {
    	this.onEnterFrame = function() {
    		if (this._alpha>50) {
    			this._alpha -= 5;
    		} else {
    			this.onEnterFrame = null;
    		}
    	};
    };
    this.onRollOut = function() {
    	this.onEnterFrame = function() {
    		if (this._alpha<100) {
    			this._alpha += 5;
    		} else {
    			this.onEnterFrame = null;
    		}
    	};
    };

    Soit tu utilises les Timer , fait une recherche sur setInterval sur le net. La procédure est plus ou moins là-même. Par contre, onEnterFrame est une véritable cochonnerie qui prend énormement de ressources comparé à un Timer
    La Poubelle, 13 Octobre 2004
    #3
  4. Offline
    MbK_ Etudjant
    Merci [Caius Crossus] mais c'est AGain qui a raison. il faut que ca soit en degradé.

    alors j'ai testé ton code AGain mais il m'affiche des erreurs.
    j'ai bien mis le soit disant bouton ds un clip. (j'ai fais un rond ds un clip et je l'ai mis ds la scene principale.)


    voici les erreurs.

    Code:
    **Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 1 : L’instruction doit apparaître dans le gestionnaire on/onClipEvent
         this.onRollOver = function() { 
    
    **Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 10 : L’instruction doit apparaître dans le gestionnaire on/onClipEvent
         this.onRollOut = function() { 
    
    Total des erreurs ActionScript : 2 	 Erreurs signalées : 2
    MbK_, 13 Octobre 2004
    #4
  5. Offline
    La Poubelle Elite
    Normal, tu n'as pas sélectionné le calque, mais un objet sur le calque.

    Sélectionne directement l'image sur la séquence.
    La Poubelle, 13 Octobre 2004
    #5
  6. Offline
    MbK_ Etudjant
    bon je t'explique ce que j'ai fait pour que ca soit plus simple pck je crois avoir fait ce que tu as dit.

    :arrow: nouveau symbole : clip
    :arrow: dans le clip, je fais un rond
    :arrow: je retourne sur la sequence et je met le clip (le rond quoi...)
    :arrow: je click sur le clip et je met le code que tu m'as donné.
    :arrow: je test et ca foire.

    :cry:
    MbK_, 13 Octobre 2004
    #6
  7. Offline
    La Poubelle Elite
    :arrow: nouveau symbole : clip
    :arrow: dans le clip, je fais un rond
    :arrow: dans le clip, je sélectionne l'image sur la séquence et je mets le code
    :arrow: je retourne sur la sequence et je met le clip (le rond quoi...)
    La Poubelle, 14 Octobre 2004
    #7
  8. Online
    RedCross ex membre
    Au temps pour moi, je n'avais pas lu :oops:
    RedCross, 14 Octobre 2004
    #8
  9. Offline
    La Poubelle Elite
    Lachez les lions :p :wink:
    La Poubelle, 14 Octobre 2004
    #9
  10. Offline
    MbK_ Etudjant
    Exel AGain. un grand merci a toi ;) c'est exactement ca que je veux.

    il y a moyen (facilement) de changer la vitesse a laquelle ca change l'opacité?
    MbK_, 14 Octobre 2004
    #10
  11. Offline
    La Poubelle Elite
    Remplace 5 par 10

    Si tu désires que ce soit encore plus transparent, diminue 50 dans le test.
    La Poubelle, 14 Octobre 2004
    #11
  12. Offline
    MbK_ Etudjant
    rien a dire, t'es vraiment pas mauvais :)

    jv pas te flatter de trop qd même tu pourrais croire que je te fais des avances :oops:

    merci ;)
    MbK_, 14 Octobre 2004
    #12
Statut de la discussion:
Fermée.