Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1219 connectés 

  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  Rendre un clip progressivement transparent avec AS3

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Rendre un clip progressivement transparent avec AS3

n°1583311
peer49
Posté le 06-07-2007 à 16:18:18  profilanswer
 

Bonjour à tous,
 
Je me suis lancé sur Flash CS3 Pro et Action Script 3, j'ai déjà visionné quelques tutoriaux sur l'AS3.
 
Voici la situation : j'ai un bouton (qui a pour nom d'occurence "bouton" ). Lorsque la souris le survole, ça lance la lecture d'un clip. Ce clip a pour nom d'occurence "animation", il contient une simple interpolation de forme qui s'achève par un stop();
Jusque là tout fonctionne (voir code ci-dessous).
 
Voici mon problème : lorsque la souris sort du survol du bouton, je souhaiterai que le clip "animation" disparaisse progressivement (jusqu'à Alpha = 0%).
Quelle fonction faut-il employer pour diminuer progressivement la valeur alpha du clip ?
 
Merci d'éclairer ma lanterne à ce sujet svp...
Pierre
 
Voici le code AS3:
 
import flash.display.DisplayObject;
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.IEventDispatcher;
 
animation.stop();
 
bouton.addEventListener(MouseEvent.MOUSE_OVER,début_animation);
function début_animation(e:MouseEvent):void {
 animation.play();
}
//jusque là ça fonctionne !
 
bouton.addEventListener(MouseEvent.MOUSE_OUT,disparition_animation);
function disparition_animation(e:MouseEvent):void {
c'est ici qu'il me manque la fonction pour diminuer progressivement la valeur alpha du clip "animation"
}

mood
Publicité
Posté le 06-07-2007 à 16:18:18  profilanswer
 

n°1583373
Zedlefou
In cabbage we trust !
Posté le 06-07-2007 à 17:26:14  profilanswer
 

animation.addEventListener(Event.ENTER_FRAME, truc);
function truc(event){
if(animation.alpha == 0){
animation.removeEventListener(Event.ENTER_FRAME, truc);
}else{
animation.alpha -= 1;
}
}

 


ca doit être un truc comme ça ...
Mais ça c'est l'ancienne méthode, y'a surement des trucs plus adapté dans la classe Transition.
regarde peut être par là ...


Message édité par Zedlefou le 06-07-2007 à 17:26:42

---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
n°1583407
peer49
Posté le 06-07-2007 à 17:59:23  profilanswer
 

Merci Zed, j'ai essayé de combiner ce que tu m'as indiqué avec mon code existant... mais j'avance un peu en aveugle. Effectivement je pensais utiliser une boucle avec condition, mais c'est l'histoire du "EnterFrame" qui me pose soucis... je continue de chercher sur d'autres forums une technique similaire... encore merci pour ta rapidité. Bye
Peer

n°1586593
malicious
Posté le 14-07-2007 à 18:17:34  profilanswer
 

Au lieu de enterFrame utilise setInterval et une fonction associée au clip

n°1586606
Zedlefou
In cabbage we trust !
Posté le 14-07-2007 à 19:10:45  profilanswer
 

en AS3 vaut mieu faire un Timer


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
n°1586609
malicious
Posté le 14-07-2007 à 19:21:00  profilanswer
 

Je ne connais pas l'AS3 mais je sais que setInterval est une sorte de timer. Sinon pourquoi "vaut mieux"? ça explose sinon lol

n°1586610
Zedlefou
In cabbage we trust !
Posté le 14-07-2007 à 19:22:38  profilanswer
 

Ca vient de la doc de Flash :
"Although you can use this method, it will generate a compiler warning. Instead of using the setInterval() method, consider creating a Timer object"


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
n°1586621
malicious
Posté le 14-07-2007 à 20:05:40  profilanswer
 

Bon, un warning c'est pas trop grave pour le moment.. Et plus tard ça devriendra une méthode obsolète.

n°1586679
craps_youp​la
Posté le 15-07-2007 à 11:15:57  profilanswer
 

le framerate d'un swf est dépendant du client (hardware/software) qui la joue. Utiliser un EnterFrame pour animer, c'est la pire des méthodes : ton anim ne se jouera jamais de manière identique sur tous les clients. Un SetInterval/Timer peut aller, mais peut aussi ralentir toute ton animation en surchargeant le framerate...C'est pour ça qu' il existe des moteurs d'animation procédurale ( mx.transitions.Tween , FuseKit , ... ). Il en existe peu en AS3...


---------------
"Il y a vraiment aucun patelin qui s'appelle 'undefined' en France ?"

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  Rendre un clip progressivement transparent avec AS3

 

Sujets relatifs
Rendre la main au dos problème[AS3] Scroll sur champ texte
Affichage aléatoire d'un clipChanger d'image en cliquant sur un clip?
[AS3] Boucler addEventListener[AS3] Lire un son de la bibliotheque
Fond transparentbouton dans un clip, pb de lien
[Flash 8] Rendre les labels d'un composant Tree editableslire un clip pendant un temps définit puis stop();
Plus de sujets relatifs à : Rendre un clip progressivement transparent avec AS3


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR