Un bouton dans un clip rollOver/rollOut

Résolu
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005 - 6 janv. 2005 à 15:35
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005 - 23 mai 2005 à 08:28
un bouton dans un clip rollOver/rollOut

Bonjour à tous,

Je suis débutant en action script et je bute sur un prob ; j'ai construit un menu de type clip rollOver/rollOut avec des étiquettes "over" et "out". Ce clip se déplie lorsque la souris passe au dessus de la zone désirée (devant laisser apparaitre les boutons de navigations) et se replie lorsque la souris sort de la zone. Pour cà c'est ok, cà marche.
Problème : Lorsque je place un bouton au dessus de la zone définie et que je passe la souris au-dessus de ce bouton, le clip se met à bouger alors que je ne suis pas sorti de la zone... (j'espère avoir été clair dans mes explications !) . Version Flash MX
Merci si vous avez un tuyau... ;-)

script :

on (rollOver) {
gotoAndPlay("over");
}

on (rollOut) {
gotoAndPlay("out");
}

22 réponses

TheSquad Messages postés 25 Date d'inscription vendredi 27 octobre 2000 Statut Membre Dernière intervention 24 mai 2006
22 mai 2005 à 03:11
le _root te permet d'avoir accés aux variables défini dans ta première scène.

Lorsque tu a plusieurs scene, le numero de la frame s'incremente au scene suivante, je m'explique :
si dans ta premiere scene, tu a 50 frames, pour acceder a la 1er frames de la scene 2, il faut taper gotoAndPlay(51).
De la meme maniere, si ta deuxieme scene comporte 25 frame, pour acceder a la 1er images de ta 3eme scenes, faut aller a la frame 76...et ainsi de suite.

Au sujet des .rar tu peux utiliser un programme qui s'appel UnRarX, tape ça dans google, tu trouvera facilement un site pour le télécharger.
3
shubenka Messages postés 759 Date d'inscription mercredi 11 décembre 2002 Statut Membre Dernière intervention 12 novembre 2008
6 janv. 2005 à 15:57
j'ai pas tout compris dsl


<HR>
http://www.c0rben.com
0
jacknikolson Messages postés 134 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 18 novembre 2012
7 janv. 2005 à 07:33
salut IndigoKod

petite précision: comment fais tu ta détection pour que ton clip se déplie ou se replie?
Si c'est avec des bouton, la réaction que tu décris est normale car si tu mets un 2e bouton au dessus de ton bouton détecteur, quand tu passes sur ton 2e bouton, le détecteur l'interprète comme un rollOut, et ton animation repart.....
dans ce cas là, pour faire simple, sur tes boutons de navigation, indique aussi que
on(rollOver){
stop();
}
et puis après tout ce que tu veux dans les on(release) etc....

sinon, il y a aussi une méthode qui consiste à détecter ta souris par un clip délimitant ta zone désirée,et non un bouton mais c'est un peu plus compliqué côté prog....

Dis moi si j'ai bien cerné le problème...

Jack
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
7 janv. 2005 à 10:12
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
7 janv. 2005 à 10:23
Salut Jack,

oui tu as bien compris mon souci, il s'agit bien d'un bouton inséré dans le clip qui sert à detecter si la souris est en rollOver ou en rollOut pour déplier ou replier le clip. J'ai bien mis ton code seul dans ce bouton :
on(rollOver){
stop();
}
mais ca ne semble tjrs pas fonctionner, dès que je passe la souris au dessus du bouton le clip se met à aller et venir sans cesse. J'ai essayé aussi en mettant le bouton sur la scene principale et non pas dans le clip, mais ca ne marche pas non plus... Je t'aurais bien envoyé le .fla mais je ne sais pas si on peut en envoyer avec ce forum... merci en tout cas...

Indigo
0
jacknikolson Messages postés 134 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 18 novembre 2012
7 janv. 2005 à 14:33
bon, je vais essayer de t'expliquer la méthode que j'utilise: elle me parait plus fiable.

tu crée un clip qu'on appellera menuGlobal

dedans se trouvent
à l'image1 de ta timeline -calque1: un stop();
calque2,3,4,etc tes boutons regroupés en position de départ.
-calque5 : un clip de détection de la taille de ton menu "groupé"avec sur le clip le code suivant:
onClipEvent(enterFrame){
function detection1() {
if (this.hitTest(_root._xmouse, _root._ymouse, false)) {
this._parent.play();
}
}
detection1();
}

ça ça va lancer ton animation quand ta souris survolle le clip de détection.
Attention, le clip ne doit être qu'à l'image clé 1.

tu fais sur les images suivantes ton menu qui s'ouvre.......et

A l'image 12 par exemple, quand ton menu est "déroulé tu mets un nouveau clip de détection de la taille de ton menu déroulé et sur le clip tu mets le code :

onClipEvent(enterFrame){
function detection3() {
if (this.hitTest(_root._xmouse, _root._ymouse, false)) {
this._parent.stop();
}else{
this._parent.play();
}
}
detection3();
}

ça comme te l'auras compris ça va stopper ton anim si la souris survolle le clip de détection ou bien la lecture continuera et bien sur, lira les images que tu auras créé à cet effet pour la fermeture de ton menu qui retournera tout seul se positionner sur l'image un (avec son stop) en attente d'un nouveau survol....

pour voir ça

http://www.ifrance.com/jacknikolson/menu_deroulant.rar

t'inquiète pas si ça met longtemps à télécharger, le serveur est super lent..

Bonne continuation

Jack
0
jacknikolson Messages postés 134 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 18 novembre 2012
7 janv. 2005 à 14:47
oups! tu feras gaffe j'ai oublié de mettre un
gotoAndStop(1);
à la fin de l'anim.
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
7 janv. 2005 à 15:40
Mince Jack ! j'ai bien téléchargé ton.rar mais comme je suis sur mac, il n'y avait rien dedans après l'expansion !
Par contre j'accepte bien les .zip.

Sinon normalement je peux ouvrir les .fla fait sous PC avec ma version flash Mx pour mac ( enfin je crois).
Merci mille fois !
0
jacknikolson Messages postés 134 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 18 novembre 2012
7 janv. 2005 à 15:51
http://www.ifrance.com/jacknikolson/menu_deroulant.fla

essaye ça, sinon je pense qu'avec les explications de plus haut tu devrais t'en sortir...

c'est quoi exactement le problème sous mac?
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
7 janv. 2005 à 16:44
Je te remercie,
j'ai téléchargé le .fla mais il ne s'ouvre pas hélas !!
Il n'y pas de problème sous Mac, c'est juste que les 2 plates formes PC et Mac ont des compatibilité limitées notamment aux niveau des logiciels. Moi je suis graphiste et webdesigner et je travaille comme 97% du métier avec des Mac et c'est vrai que c'est un peu un souci pour certains cas de figures (comme ici par ex). Bon allez je vais revoir tes explications et m'y pencher studieusement !!
0
shubenka Messages postés 759 Date d'inscription mercredi 11 décembre 2002 Statut Membre Dernière intervention 12 novembre 2008
7 janv. 2005 à 16:46
probléme de version flash surement


<HR>
http://www.c0rben.com
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
7 janv. 2005 à 16:56
Oui bien vu ! en fait j'ai lancé flash MX 2004 au lieu du MX et cà rouvre bien le fichier... merci ! :)
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
7 janv. 2005 à 19:51
Jack, pourquoi un gotoAndStop(1);
à la fin de l'anim ?...... elle marche très bien comme cà (sur le .fla que tu m'as envoyé où tu a oublié de le mettre)...........
moi, j'ai refait un clip et suivi à lettre tout-tout- tout, et mon clip ne semble pas vouloir s'arreter à mi-chemin comme le tiens - il y a qq chose que j'ai du oublier mais je vois pas quoi... Javascript:Insert_Emoticon('./imgs2/smile_sad.gif');
0
jacknikolson Messages postés 134 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 18 novembre 2012
7 janv. 2005 à 21:14
alors le problème vient du fait que si ton 2e clip n'est que sur 1 seule image clé, à priori pas le temps de détecter......donc si tu regardes bien mon fla, le clip est sur 2 images et là ça marche....j'avais oublié de te le dire, désolé.
Sinon pour le gotoAndPlay, c'est juste que comme sur le fla j'ai rajouté une étiquette d'image pour te faire voir où était le calque du clip et du coup ça lit aussi les images vides..........c tout...

Jack

PS, bien sur c'est ma méthode, il y en a peut être d'autres plus judicieuses. si vous voyez autre chose je suis preneur..
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
8 janv. 2005 à 17:32
Royal, ca fonctionne !!

Effectivement il fallait laisser du temps pour la detection ( j'avais bien laissé le clip sur 2 images mais ca ne suffisait pas, alors je l'ai mis sur 3 images...)

Merci les gars !!
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
10 janv. 2005 à 20:31
huum, j'ai parlé trop vite : dès que j'affecte un ordre du style "gotoAndPlay"aux boutons présent dans le clip, l'anim se repli et pas moyen d'accéder à une autre image ou une nvlle séquence. Est-ce normal Docteur ?
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
10 janv. 2005 à 21:21
c'est bon j'ai trouvé comme un grand ! j'ai rajouté la commande _root:

on (release) {
_root.gotoAndPlay(5);
}

par contre comment fait-on pour faire des retour chariot avec espace dans les messages de ce forum ? ( pour écrire + clean)
0
IndigoKod Messages postés 20 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 18 janvier 2005
11 janv. 2005 à 16:28
Aie, cette fois j'ai un petit soucis et pas moyen de trouver la solution...
Mon fichier flash a 2 séquences :
(séquence1, séquence2)

Mon bouton inclu dans le clip servant de menu général comporte la commande suivante :

on (release) {
_root.gotoAndPlay(20);
}

Quand je suis sur la séquence2 et que je clique sur le bouton, la timeline se place bien sur l'image 20 mais de la séquence1 !! Ceci au lieu de de se placer sur l'image 20 de la séquence2 ! ..............
Pourquoi ? .........
Est-ce un probleme avec la commande _root ? (parceque j'ai essayé avec le bouton directement sur la scène et ca marche)
Merci !
0
shubenka Messages postés 759 Date d'inscription mercredi 11 décembre 2002 Statut Membre Dernière intervention 12 novembre 2008
11 janv. 2005 à 16:32
_root n'est pas une commande c'est un 'item' pour dire a flash ou effectuer la commande
et _root signifie que la commande sera exetuter au plus haut de l'arborescence des clip

c'est expliquer a la rache mais tu aurai pu faire un tour dans l'aide pour savoir a quoi servai _root au lieu de l'utiliser bêtement


<HR>
http://www.c0rben.com
0
shubenka Messages postés 759 Date d'inscription mercredi 11 décembre 2002 Statut Membre Dernière intervention 12 novembre 2008
11 janv. 2005 à 16:35
tien cela risque d'étre plus clair





_root

[file:///C:/Documents%20and%20Settings/Administrateur/Local%20Settings/Application%20Data/Macromedia/Flash%20MX%202004/en/Configuration/HelpPanel/Help/ActionScriptDictionary/12_ASD412.html#1415408
MovieClip._lockroot
].


http://www.c0rben.com
0
Rejoignez-nous