thenaoh
Messages postés111Date d'inscriptiondimanche 28 septembre 2003StatutMembreDernière intervention24 juin 2015
-
11 avril 2007 à 15:01
Darkrats
Messages postés212Date d'inscriptionmardi 2 novembre 2004StatutMembreDernière intervention12 mai 2008
-
20 avril 2007 à 11:21
Bonjour à tous !
J'ai sur mon site flash un bouton contenant une zone de texte. Est-il possible de modifier via actionscript le texte de ma zone de texte ? J'ai essayé en créant par exemple un bouton nommé "monBouton", dans lequel j'ai créé pour les positions "Up" et "Over" une zone de texte, nommée "monTexte". Le code suivant est sans effet :
monBouton.monTexte.text = "toto";
code qui marche très bien lorsque cette même zone de texte est dans un MovieClip... La solution est probablement tout bête, mais je ne la vois pas...
cs_Girou
Messages postés1203Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention23 juillet 20092 12 avril 2007 à 09:41
Bonjour,
essaye en ne mettant pas une zone de texte dans chaque état du bouton mais en mettant la zone de texte sur un calque à part du bouton (au dessus du reste)
Sinon, utilise un movieclip !!
avec les événement onRollOver, onRollOut et onPress tu peux facilement simuler un bouton avec un movieclip.
thenaoh
Messages postés111Date d'inscriptiondimanche 28 septembre 2003StatutMembreDernière intervention24 juin 2015 12 avril 2007 à 21:21
Bonjour et merci pour ta réponse !
Hélas même en mettant la zone de texte dans un calque à part, ça ne marche pas mieux, et je perdrais en plus la possibilité d'avoir plusieurs affichages différents de la zone de texte selon les états du bouton.
Je pense en effet devoir utiliser des movieclip. C'est dommage, ça m'aurait un p'tit peu allégé mon code, mais bon, au moins ça marche
Darkrats
Messages postés212Date d'inscriptionmardi 2 novembre 2004StatutMembreDernière intervention12 mai 20081 20 avril 2007 à 11:21
Salut,
Je sais que le sujet date un peu, mais (j'espère) que ma solution pourra encore être utile à quelqu'un (si pas à Thenaoh, à quelqu'un d'autre d'intéressé).
Pour concevoir ce genre de truc, moi à ta place, je ferais mon bouton sans le texte.
Je créerais un clip contenant le champ texte avec plusieurs frames, chacune représentant un état du bouton.
Pour plus de portabilité, je les incluerais tous deux dans un movieclip (comme ça, tu pourras réutiliser facilement le bouton avec le texte)
J'aurais donc :
un movieClip général (que j'appelerai : bouton_general) contenant deux symboles mais une seule frame.
au dessus un bouton invisible (bouton).
au milieu un clip (texte) qui contient 3 frames avec chacune un champ texte (avec comme nom d'occurence : champ_texte)
au dessous un clip (fond) qui contient 3 frames avec le design du bouton dans les différents états demandés
Lorsque ton bouton change d'état (survole, press etc) tu mettrais un code comme ceci :
Code (dans mon cas, le code est mis sur la première frame du clip : bouton_general)
// Variable qui sauvegardera temporairement l'intitulé du bouton
var sNom_temporaire :String = "";
// Code fonctionnant pour les différentes actions
bouton.onRollOver = function(){
// Sauvegarde de l'intitulé du bouton ... si le texte ne changera jamais, on peut attribuer directement la valeur à la variable. Sans le refaire à chaque fonction
sNom_temporaire = texte.champ_texte.text;
// On change l'état du design du bouton (on peut aussi utiliser des étiquettes plutôt que les numéros de frame)
fond.gotoAndStop(3);
// On change l'état du texte
texte.gotoAndStop(3);
// On réattribue la valeur du texte au nouveau champ
texte.champ_texte.text = sNom_temporaire;
}
Fin code En sauvant le nom du champ texte dans une variable, tu peux ainsi le réattribuer à chaque changement de frame.
Voilà.
--------- Darkrats ---------
la loi est dure mais c'est la loi
-------- Infograpix --------