Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/12/2006, 00h52   #1
Membre régulier
 
Avatar de charlix
 
Étudiant
Inscription : janvier 2006
Messages : 285
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2006
Messages : 285
Points : 72
Points : 72
Envoyer un message via MSN à charlix
Par défaut [FLASH 8] classe tween

bonsoir,

Dans mon animation, j'ai un menu avec une image d'entrée (bonjour)et 3 boutons(pour les menus news, photo et haha), et je souhaiterais qu'en cliquant sur l'un des 3 boutons l'image (bonjour) disparaisse et le menu associé au bouton apparaisse. Les classes tween que j'ai réalisé fonctionnent mais au début les classes tween qui doivent disparaitre avec le clic du bouton sont sont déja activée et donc elle apparaissent d'un coup et disparaisse alors que je les aient initialisées a stop().

Je ne comprend pas d'ou vient le probleme.

les variables tweener... sont là pour ne pas gener un autre clic sur un bouton si l'utilisateur est déja sur le menu associé au bouton.

Pour le script de la 1ere frame:
Code :
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
 
import mx.transitions.Tween; 
import mx.transitions.easing.*;
tweenerphoto=0;
tweenerhaha=0;
tweenernews=0;
menuhaha._alpha=0;
menunews._alpha=0;
menuphoto._alpha=0;
 
var disparaitre:Tween = new Tween( bonjour, "_alpha", elastique.easeOut, 100, 0, 25, false );
 
disparaitre.stop();
 
var apparaitrephoto:Tween = new Tween( menuphoto,"_alpha",elastique.easeOut,0,100,30,false);
apparaitrephoto.stop();
 
var disparaitrephoto:Tween = new Tween( menuphoto, "_alpha", elastique.easeOut, 100, 0, 25, false );
disparaitrephoto.stop();
 
 
var apparaitrenews:Tween = new Tween( menunews,"_alpha",elastique.easeOut,0,100,30,false);
apparaitrenews.stop();
 
var disparaitrenews:Tween = new Tween( menunews, "_alpha", elastique.easeOut, 100, 0, 25, false );
disparaitrenews.stop();
 
var apparaitrehaha:Tween = new Tween( menuhaha,"_alpha",elastique.easeOut,0,100,30,false);
apparaitrehaha.stop();
 
var disparaitrehaha:Tween = new Tween( menuhaha, "_alpha", elastique.easeOut, 100, 0, 25, false );
disparaitrehaha.stop();
script pour un bouton :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
on(press) {
 
	if(tweenerphoto==0 && bonjour._alpha==100){
		disparaitre.start();
		apparaitrephoto.start();
		tweenerphoto=1;
		tweenernews=0;
		tweenerhaha=0;
	};
 
}
tout conseil est le bienvenu, je suis completement ouvert à cette heure la !!!!!!
charlix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 07h51   #2
Membre expérimenté
 
Inscription : octobre 2006
Messages : 642
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 642
Points : 599
Points : 599
Regarde bien ce tutorial:

http://pyrrha.developpez.com/articles/flash/tweens/

Surtout la partie qui parle des listner.
melonmaudic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 14h35   #3
Membre régulier
 
Avatar de charlix
 
Étudiant
Inscription : janvier 2006
Messages : 285
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2006
Messages : 285
Points : 72
Points : 72
Envoyer un message via MSN à charlix
En faite je n'ai pas encore essayé d'utiliser ses fonctions car mon probleme ne vient pas de là. mais les menus qui doivent disparaitres ou apparaitres en fonction des boutons sont affichées au demarrage de l'animation alors qu'elles ne devraient pas :
Code :
1
2
3
4
 
menuhaha._alpha=0;
menunews._alpha=0;
menuphoto._alpha=0;
Mais apres j'aurais besoin d'utiliser ces explications c'est sur.
charlix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 14h49   #4
Membre expérimenté
 
Inscription : octobre 2006
Messages : 642
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 642
Points : 599
Points : 599
Citation:
menuhaha._alpha=0;
menunews._alpha=0;
menuphoto._alpha=0;
Tu mets bien ça dans la première frame?
melonmaudic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 15h03   #5
Membre régulier
 
Avatar de charlix
 
Étudiant
Inscription : janvier 2006
Messages : 285
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2006
Messages : 285
Points : 72
Points : 72
Envoyer un message via MSN à charlix
ouai j'ai même mis :

Code :
1
2
3
4
5
6
7
 
onEnterFrame=function() {
	menuhaha._alpha=0;
	menunews._alpha=0;
	menuphoto._alpha=0;
 
};
mais maintenant quand je clic sur le bouton mon image de départ disparait bien avec tween mais celle sui devrait apparaitre n'apparait pas.

je comprend plus
charlix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 15h08   #6
Membre régulier
 
Avatar de charlix
 
Étudiant
Inscription : janvier 2006
Messages : 285
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2006
Messages : 285
Points : 72
Points : 72
Envoyer un message via MSN à charlix
mon code pour le bouton est celui-ci :
Code :
1
2
3
4
5
6
7
8
9
10
11
 
on(press) {
 
	if(tweenerphoto==0 && bonjour._alpha==100){
		disparaitre.start();
		apparaitrephoto.start();
		tweenerphoto=1;
		tweenernews=0;
		tweenerhaha=0;
	};
}
et mon code sur la premiere frame est celui-ci:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
import mx.transitions.Tween; 
import mx.transitions.easing.*;
 
onEnterFrame=function() {
	menuhaha._alpha=0;
	menunews._alpha=0;
	menuphoto._alpha=0;
 
};
 
var tweenerphoto:Number=new Number(0);
var tweenerhaha:Number=new Number(0);
var tweenernews:Number=new Number(0);
 
var disparaitre:Tween = new Tween( bonjour, "_alpha", elastique.easeOut, 100, 0, 25, false );
disparaitre.stop();
 
var apparaitrephoto:Tween = new Tween( menuphoto,"_alpha",elastique.easeOut,0,100,30,false);
apparaitrephoto.stop();
//var disparaitrephoto:Tween = new Tween( menuphoto, "_alpha", elastique.easeOut, 100, 0, 25, false );
//disparaitrephoto.stop();
je ne comprend pas pourquoi apparaitrephoto ne se lance pas
charlix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 15h14   #7
Membre expérimenté
 
Inscription : octobre 2006
Messages : 642
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 642
Points : 599
Points : 599
Il faut m'expliquer un peu plus ce que tu essaye de faire

var apparaitrephoto:Tween = new Tween( menuphoto,"_alpha",elastique.easeOut,0,100,30,false);

tu ne devrais pas mettre 25? pour qu'il se mette dessus ton disparaître?
melonmaudic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 15h34   #8
Membre régulier
 
Avatar de charlix
 
Étudiant
Inscription : janvier 2006
Messages : 285
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2006
Messages : 285
Points : 72
Points : 72
Envoyer un message via MSN à charlix
De toute facon 30 ou 25 ca ne change pas grand chose et vu la difference des deux éléments je trouver que 30 était mieux.

Je vais réexpliqué mon soucis. Tout d'abord j'ai un menu au depart de l'animation et 3 boutons, lorsque je clic sur le bouton le menu de départ doit disparaitre et le menu associé au bouton apparaitre. Mais pour l'instant seul le menu de départ disparait( le mm probleme pour les trois boutons). alors que dans le code du bouton le test est lu(j'ai essayer avec une trace()).

exemple d'un des codes des boutons
Code :
1
2
3
4
5
6
7
8
9
10
11
 
on(press) {
 
	if(tweenerphoto==0 && bonjour._alpha==100){
		disparaitre.start();
		apparaitrephoto.start(); //cette anime ne se lance pas
		tweenerphoto=1;
		tweenernews=0;
		tweenerhaha=0;
	};
}
charlix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2006, 18h38   #9
Invité de passage
 
Inscription : décembre 2006
Messages : 1
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 1
Points : 1
Points : 1
Par défaut peut-être une solution

bonjour, je suis bien modeste dans l'action script
voici ce que j'ai trouvé chez morganLoyer, un tutoriel dans le site
j'ai repris son script et rajouté la fonction tween.rewind
voici le script (j'ai une animation avec deux boutons et deux clips

voila j'espère que cela te sera utile.A plus (merci de me le dire, c'est la première fois que je m'inscrit dans un forum)
// déclaration de la Tween :
var maTween:Tween = new Tween( this.cours4, "_x", Bounce.easeOut, this.cours4._x, this.cours4._x+550, 20, false );

// nous lui indiquons de ne pas s'executer pour l'instant à l'aide de la méthode stop();
maTween.stop();

// detection du clic sur un bouton :
btn4.onRelease = function (Void):Void {
// déclenchement de l'interpolation grace à Tween.start();
maTween.start();
secondTween.rewind();
}

//bouton5


// déclaration de la Tween :
var secondTween:Tween = new Tween( this.cours5, "_x", Bounce.easeOut, this.cours5._x, this.cours5._x+550, 20, false );

// nous lui indiquons de ne pas s'executer pour l'instant à l'aide de la méthode stop();
secondTween.stop();

// detection du clic sur un bouton :
btn5.onRelease = function (Void):Void {
// déclenchement de l'interpolation grace à Tween.start();
secondTween.start();
maTween.rewind();
}
jeffBy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2006, 14h11   #10
Membre régulier
 
Avatar de charlix
 
Étudiant
Inscription : janvier 2006
Messages : 285
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2006
Messages : 285
Points : 72
Points : 72
Envoyer un message via MSN à charlix
Dans ton actionsript ,tu as deja oublié d'importer la classe Tween avant de l'utiliser.

Code :
1
2
3
 
import mx.transitions.Tween; 
import mx.transitions.easeout.*;
La fonction rewind de tween ne sert juste a mettre une autre tween a son etat d'origine.

En faite j'ai résolu mon probleme en retappant tout mon code, et ca marche, je ne savais pas du tout pourquoi l'autre ne fonctionnais pas. Il y a des jours comme ca et d'autres pas.

Mais merci pour ton soutien
charlix est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h52.


 
 
 
 
Partenaires

Hébergement Web