salut
je suis entrain de faire un site en flash mais j'ai un petit problème...
bon je vous préviens si vous souhaitez m'aider couper la musique et concentrez vous lol et bien sûr il faut avoir des connaissances en actionscript
-------------------------------
TOUT D'ABORD je vous monte la méthode que j'utilise pour créer un site de trois pages :
petit conseil lisez le code dans les cadres, en dernier : D pour ne pas vous mélanger les pinceaux
http://img142.imageshack.ack.us/img142/3085/sitetk2.jpg
---------
alors voila
lorsque je clique sur le bouton 1 > je veux que la page1 s'affiche mais qu'elle soit animé comme le site du lacanau gliss festival > la page est en mouvement de bas en haut
bon ça je sais comment m'y prendre
mais ce que je souhaiterais c'est que lorsque PAR EXEMPLE je décide d'afficher la page 3 (en cliquant sur le bouton3) >> et bien que cette page s'affiche MAIS que la page qui était ouverte ( dans ce cas la page1) se REFERME (mouvement de haut en bas)
mais la je vois pas comment faire...
j'aurais p't'être une idée :
bon déjà dans le CLIP de CHAQUE PAGE je rajoute une animation qui la ferme ( mouvement de haut en bas) qui sera située par exemple à limage 20
( juste pour info : l'emplacement réservé de limage 1 à l'image 19 est l'animation de la page qui s'ouvre et je mets un stop à limage 19)
ENSUITE dans le code de CHAQUE BOUTON, il faudrait que je rajoute un ligne de code disant que :
lorsque tu clique sur un autre bouton >> va à l'image 20 dans la page QUI EST DEJA OUVERTE ( donc la page ouverte se ferme )
voila! si vous avez compris mon problème, et que vous avez la SOLUTION et bien n'hésitez pas!
merci : D
oups
dans le CLIP de CHAQUE PAGE je rajoute une animation qui la ferme ( mouvement de haut en bas) qui sera située par exemple à limage 20
oui je voulais dire que lanimation qui ferme la page COMMENCE à l'image 20 et qu'elle se termine plus loin > par exemple à limage 40
Salut
Alors je peut te proposer une piste, mais j'ai pas trop le temps de chercher dans mes sources donc je vais faire ça de tête.
Bon ce que je te propose c'est de mettre la page et le bouton associé dans le même clip, ensuite tu nommes tes trois clips avec des numéros, par exemple
bt_0
bt_1
bt_2
donc dans le clip bt_0 tu as ton premier bouton avec l'animation de la page.
Ensuite dans ton code il faut que tu fasses une boucle sur les 3 clips
for (var i=0, i<3, i++)
{
var bt=_root["bt_"+i];
bt.onrelease=function{
if (bt_clique=this) tu fermes ta page //si le bouton est déjà cliqué on lance l'anim de fermeture
sinon on lance l'anim d'ouverture
bt.Play
var bt_clique=this //on enregistre le bouton cliqué dans une variable comme ça quand on reprend la boucle on vérifies si on a déjà cliqué sur un bouton
}
}
Bon en gros ça doit etre un truc dans le genre, encore une fois je le fais de tête donc dois y avoir des erreurs ^^
mais dans la logique c'est comme ça qu'il faut procéder.
Donc à vérifier ou a compléter par ceux qui connaissent, sinon j'essairais de tester ça demain
Voilà ;)
Ouais bon je me suis un peu embrouillé dans le ciblage du bouton qui ouvre la page
en fait c'est ma nomination des clips qui fout le dawa, le mieux c'est de nommer les 3 clips clip_0 etc...
dans ton clip tu as un bouton que tu nomme bouton, donc le ciblage dans la boucle se fera
var clip=_root["clip_"+i].bouton;
et donc remplacer tous les bt par clip
désolé c'est un peu brouillon ^^
si personne ne clarifie la situation j'essayerais d'expliquer d'avantage plus tard
Bon courage
ah okay tu me propose de tout changer
ouai prk pas mais mes connaissances en actionscript sont limitées : S
ou alors j'ai ptetre une autre méthode
C'est pas possible de dire dans le code de la page que lorsque je clique sur un autre bouton et bien tu play à l'image 20 ?
Dans la page 1 : ce s'rais du genre
if(_root.clik.btn_2)
gotoAndPlay(20)
if(_root.clik.btn_3)
gotoAndPlay(20)
Dans la pge 2
if(_root.clik.btn_1)
gotoAndPlay(20)
if(_root.clik.btn_3)
gotoAndPlay(20)
Dans la page 3
if(_root.clic.btn_1)
gotoAndPlay(20)
if(_root.clic.btn_2)
gotoAndPlay(20)
bon ce code est faux mais tu vois ce que je veux dire?
( je repondais à melies)
oui voila lesquale35 je veux que la 2eme page à s'afficher "pousse" la 1ere vers le haut
m'enfin pour syncroniser je verrais ça plus tard
c'que je veux tout d'abord c'est que lorsque je clique sur un autre bouton : la page déjà ouverte se ferme
Oui ta solution est possible mais le problème c'est que si tu as 10 boutons t'imagines il faut que tu écrives 9 fois la même chose pour les 9 autres boutons
Alors que si tu fais une boucle, il suffit juste de changer la limite de i, par exemple avec 10 boutons tu mets juste i<9 et c'est bon t'auras rien d'autre à changer.
Mais effectivement ce que tu peut faire c'est essayer ta solution, qui normalement devrais marcher, et ensuite essayer de vois comment tu peut améliorer ton code pour qu'il soit facilement adaptable à toutes les situations ;)
en fait je voudrais qu'on me corrige ce code lol
if(_root.clic.btn_2)
gotoAndPlay(20)
if(_root.clik.btn_3)
gotoAndPlay(20)
traduction en francais
si à "root" je clique sur le bouton 2
alors va à l'image 20 et joue l'animation de fermeture
i à "root" je clique sur le bouton 3
alors va à l'image 20 et joue l'animation de fermeture
et oui il faut que je le fasse à toute les pages qui ne sont pas ouvertes
oui voila melies donc tu peut me corriger le code : )?
juste celui-la
if(_root.clic.btn_2)
gotoAndPlay(20)
if(_root.clik.btn_3)
gotoAndPlay(20)
apres le reste je me débrouille comme un grand : D
parcque "clic" ça n'existe pas dans l'actionscrip non?
Du coup ton code serais
Dans la page 1 :
_root.btn_2.onPress=function{
page1.gotoAndPlay(20) //tu fermes la page 1
page2.Play(); // tu ouvres la page 2
}
_root.btn_3.onPress=function{
page1.gotoAndPlay(20) //tu fermes la page 1
page3.Play(); tu ouvres la page 3
}
Tu peut essayer ça, faut voir si ça poses pas de problèmes quand tu cliques sur un bouton sans que la page soit ouverte ![]()
ah ba non quel idiot pas "clic" mais "onRelease" plutôt lol non?
if(_root.onRelease.btn_2)
gotoAndPlay(20)
if(_root.onRelease.btn_3)
gotoAndPlay(20)
est ce que mon code à l'air juste?
( je n'ai pas testé étant donné que je n'ai pas encore commencé à coder )
okayy merci je testerais : D
pardon dans le code quand tu ouvres ou ferme la page il faut bien sur refaire le chemin du clip où se trouve la page, du genre _root.page2.Play();
enfin tout dépend de ton fla, je te laisse voir ;)
je n'ai pas testé non plus parce que je n'ai pas flash sur ce pc, donc il faut pas forcément copier/coller ce que j'ai écris, je sais pas si c'est bon à 100 % ^^
Mais dans l'esprit ça doit etre ça ;)
ui ui t1kiet
sinon je pense que c'est ça :
Dans le code de la page 1
_root.btn_2.onRelease=function{
gotoAndPlay(20)
}
_root.btn_2.onRelease=function{
gotoAndPlay(20)
}
Et dans le code du bouton 1
on (release) {conteneur.gotoAndStop(1);
ui je rapelle que les pages sont dans le clip conteneur
( je répondais à melies)
ah bon? ben on verra demain (suspense!)
là j'vais m'faire un p'tit gta4
oups j'ai mis 2 fois "btn_2" > btn_2 et btn_3 bien sûr
salut
bon et bien... ça ne marche pas et... je ne comprends pas pourquoi...
dc j'vous met à dipostion le ficher flashmx2004 du site que j'ai tout juste commencé ( comme ça pas de probleme d'incompatibilité)
ici >> http://mathieu.berger33.free.fr/flashprob/ ("siiiiite")
et pour voir comment atteindre le code :
pour aller dans le clip conteneur "caché"
http://img371.imageshack.us/img371/7734/89916127yw2.jpg
une fois ds le clip conteneur http://img513.imageshack..us/img513/800/95728943br4.jpg
une fois dans la partie accueil
http://img110.imageshack.us/img110/3673/31584097bv8.jpg
en fait je voudrais qu'une fois le site ouvert ;
lorsque je clique sur le bouton "PUBLICITE" (qui a pour occurence "btn_2") ET BIEN QUE la fenêtre "accueil" s'en aille à droite pour laisser la place au nouveau cadre (cadre creation graphique) qui arrive par la gauche
parcque là le cadre accueil disparait pour laisser la place au cadre création graphique et ce n'est pas ce que je veut
donc vouala si quelqu'un comme melies, lesquale ou qlq d'autre ( s'il n'est pas trop occupé ) pouvait essayer de modifier le code ou... enfin de résoudre le probleme... ben ce srais sympa
: )
merci
oups oui heu pas la peine de me renvoyer le fichier hein : juste me dire ce qu'il faut modifier