Changement bouton, mais même action

cs_Moska Messages postés 26 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 3 avril 2003 - 26 mars 2003 à 14:44
cahuito Messages postés 1 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 18 novembre 2003 - 18 nov. 2003 à 12:45
Salut!

J'ai un gros problème...
J'ai un bouton dans mon animation, auquel est associée une action :
on (release){
//mon code
}

Sur une action de l'utilisateur, je voudrais charger un nouveau bouton à la place de celui qui est sur mon animation, mais je voudrais conserver la même action pour le nouveau bouton. Et je ne sais pas comment faire pour garder la même action.

En effet, pour l'instant, j'ai mon bouton qui a un nom d'instance : "monBouton".
Je charge mon nouveau bouton en faisant :
loadMovie("monNouveauBouton.swf", "monBouton");

En faisant ça, j'arrive à charger mon nouveau bouton, seulement il n'y a plus aucune action associée (alors qu'il y en avait une associée au premier bouton).

Alors j'ai essayé, au-lieu de placer l'action sur le bouton (puisque dans ce cas, c'était normal qu'elle soit perdue), de la mettre dans le code principal avec :
monBouton.onRelease = function(){
//mon code
}

Mais quand je charge mon nouveau bouton à la place de l'ancien, le nom d'instance est perdu, et donc l'action associée aussi.

Si vous pouvez m'aider, merci bp parce que je suis bloqué...

Question subsidiaire : pensez-vous que ce serait faisable avec des MovieClip au lieu des boutons? J'ai peur d'avoir le même problème : le nom d'instance de mon premier MovieClip sera perdu quand je chargerai le nouveau, non?...

8 réponses

cs_tombal Messages postés 212 Date d'inscription samedi 8 février 2003 Statut Membre Dernière intervention 25 juillet 2005
26 mars 2003 à 16:58
Que ce soit avec un movieclip ou un bouton tu auras le meme probleme.....

Ton probleme viens du fait que tu met le code d'action du bouton dans le bouton lui meme
Or il faudrais que tu mettes le code sur l'animation

Si tu veux que le code serve pour deux bouton, crée une fonction :

function nom_de_la_fonction () {
.......CODE
}

monBouton1.onRelease = function(){
nom_de_la_fonction();
}

monBouton2.onRelease = function(){
nom_de_la_fonction();
}

CES CODES DOIVENT ETRE DANS UNE IMAGE DU SCENARIO

Tombal

----------------------------------------------------------------------
Vous n'avez rien a faire ? Vnez faire un tour sur mon jeu
Un ptit scrabble
0
cs_Moska Messages postés 26 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 3 avril 2003
26 mars 2003 à 17:38
Avant tout, merci pour ton aide!

Cela dit, je n'ai pas mis mon code sur le bouton (enfin, au début, puis g changé! ;o) ).
Mais même si je le mets sur l'animation, g un problème. En effet, quand je le mets sur l'animation, il faut que j'utilise le nom d'instance de mon bouton :
monBouton.onRelease = function(){
//mon code
}

Mais quand je vais charger un autre bouton, c'est pour REMPLACER le précédent (celui dont le nom d'instance est monBouton). Et du coup, je vais perdre son nom d'instance, et je me retrouverai coquin!!!

Peut-être qu'en mettant le bouton que je veux remplacer dans un MovieClip de mêmes dimensions que le bouton, et en associant l'action au MovieClip et non au bouton, ça pourrait marcher... Mais bonjour le bricolage!!! :sad)

En tout cas, merci encore.
0
cs_tombal Messages postés 212 Date d'inscription samedi 8 février 2003 Statut Membre Dernière intervention 25 juillet 2005
26 mars 2003 à 19:08
Pourquoi veux tu mettre un bouton a la place d'un autre bouton ???

Si c'est juste pour changer l'apparence, il y a d'autre moyen comme se servir d'un clip comme bouton

Tombal

-----------------------------------------------------------------------------------------
Vous n'avez rien a faire ? Vnez faire un tour sur mon jeu
Un ptit scrabble
0
cs_Moska Messages postés 26 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 3 avril 2003
27 mars 2003 à 10:21
Effectivement, devant mes pb avec les boutons, je vais essayer avec des MovieClip... en espérant avoir plus de réussite... :(
0

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

Posez votre question
cs_Moska Messages postés 26 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 3 avril 2003
27 mars 2003 à 15:15
Argh!!! Ca marche pas!!!
J'ai un fla où j'ai un MovieClip dont le nom d'instance est : monClip. A ce MovieClip est associée une action (le code n'est pas sur le MovieClip (auquel cas il serait perdu à coup sur) mais sur la scène) qui affiche du texte dans une zone de texte (qui a pour nom texte) quand on clique sur le MovieClip. Cette partie marche sans problème.

monClip.onRelease = function (){
texte = "ok";
}

Dans cette animation, j'ai aussi 2 boutons. Quand je clique sur un bouton, ça charge un nouveau MovieClip dans monClip (chacun des boutons charge un MovieClip différent). Code associé aux boutons :

on (release){
loadMovie("clip.swf","monClip");
}

et

on (release){
loadMovie("clip2.swf","monClip");
}

Le chargement des MovieClip dans monClip marche autant de fois que je veux (je peux charger les 2 MovieClip en appuyant sur les boutons tant que je veux). Ca veut dire que le nom d'instance monClip n'est pas perdu, sinon loadMovie() ne saurait plus où charger les boutons.
Et ce que je ne comprends pas, c'est que l'action associée au MovieClip de départ (c'est-à-dire remplir une zone de texte) ne fonctionne plus quand je charge un des nouveaux MovieClip. Mais pourquoi ça ne marche plus??? L'action est associée au clip via son nom d'instance (elle n'est pas directement sur le MovieClip) ; et ce nom d'instance n'est apparemment pas détruit quand je charge un nouveau MovieClip puisque je peux en charger 2 différents autant de fois que je veux en ciblant loadMovie() vers monClip (le nom d'instance). Alors pourquoi ça marche pas???

Désolé d'être aussi long mais c pas facile à expliquer... J'espère au moins avoir été clair. Merci bp de m'aider si vous avez une idée parce que là je suis vraiment vraiment emmer... :-( :-( :-(

PS : au-lieu de charger un nouveau MovieClip dans le MovieClip monClip, j'ai essayé de charger un bouton. Mais même problème : le bouton que je charge écrase le MovieClip et quand je clique sur le bouton chargé, l'action (remplir une zone de texte) ne fonctionne plus. Snif...
0
cs_tombal Messages postés 212 Date d'inscription samedi 8 février 2003 Statut Membre Dernière intervention 25 juillet 2005
27 mars 2003 à 16:35
Je ne suis pas sur de ce que je vais dire
Voici ce que j'ai lu :

loadMovie :
loadMovie("url",niveau/cible[, variables])

cible :Un chemin pointant vers un clip cible. Le clip cible sera remplacé par l'animation ou l'image chargée. Vous devez spécifier un clip cible ou un niveau d'une animation cible (vous ne pouvez pas spécifier les deux).

--> Il est ecrit que la cible sera REMPLACE par l'animation
Si c'est le cas, tu devrais peut etre creer un sous clip sans monclip et y charger ton load movie

----------------------------------------------------------------------Vous n'avez rien a faire ? Vnez faire un tour sur mon jeu
Un ptit scrabble
0
cs_Moska Messages postés 26 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 3 avril 2003
27 mars 2003 à 16:45
Merci, mais c clair que ce que je veux faire, c un peu le bordel!

Cela dit, quand tu dis créer un sous clip dans monClip, qu'est-ce que tu entends exactement par là? Est-ce que c juste superposer 2 MovieClip sur la scène? Ou bien y a-t-il un moyen de spécifier, par du code ou des paramètres, que le sous clip dépend de monClip? Dans ce dernier cas, pourrais-tu me donner qq détails STP?
0
cahuito Messages postés 1 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 18 novembre 2003
18 nov. 2003 à 12:45
j'ai créé une animation principale qui charge dans un scroll pane un fichier swf
sur cette animation principale il y a un bouton qui doit deplacer la tete de lecture du fichier swf
comment créer le chemin du bouton vers ce swf
0
Rejoignez-nous