ActionScript 3 Mouse.CLICK

pinguin

Membre actif
26 Novembre 2008
109
3
Waterloo / Belgique
j'ai un problème en AS3.

mon problème me parrait si simple à résoudre, mais je n'y comprend rien.

Voici :

j'ai un bouton dans ma scène qui à comme Classe : "btnTravaux" .

dans mon code, j'aimerais éffectuer une action quand je clique dessus alors dans mon code j'ai :

btnTravaux.addEventListener(MouseEvent.CLICK, sous_menu);

Tout est correcte dans l'écriture il n'y a pas d'erreur, mais il m'indique le code d'erreur suivant :

1061: Appel à la méthode addEventListener peut-être non définie, via la référence de type static Class.

je ne comprend pas du tout d'où le problème pourrait venir ! Mais j'ai trouver un remède à ce problème, en replacent "btnTravaux" par "This".

Mais il y a un autre problème, c'est que je n'ai pas qu'un seul bouton alors quand je clique sur n'importe d'autre bouton, ils effectuent tous le fonction du bouton "btnTravaux".

Donc : je ne sais pas ciblé mon bouton.

merci d'avance
 
Bin oui, tu n'as pas écrit de classe de ce nom.

Tu es super confus dans tes explications, je pense que tu ne sais pas vraiment ce que tu fais ni pourquoi, et du coup tu fais n'importe quoi.

Tu devrais lire le livre Pratique d'ActionScript 3 de Thibaut Imbert qu'on peut même trouver en version pdf gratuite, ça t'éclaircira les idées, tu as vraiment besoin d'acquérir les bases.
 
bizarre .

j'ai meme essayer de retirer tout le code que j'ai à cette frame là et il me met toujours l'erreur alors qu'il n'y a plus rien dans le code.

regarde l'image : http://img36.imageshack.us/img36/9171/capturedcran20091223082.png

en nom de Classe j'ai bien "btnTravaux" et en bas à gauche dans l'occurrence de mon bouton j'ai bien 'btnTravaux".

Je suis actuellement en train de lire un livre : "Apprendre à programmer en AS3" de Anne Tasso.
 
Si tes boutons sont sur la timeline, tu n'as pas besoin de cocher Exporter pour AS etc. et tu n'as pas besoin de donner un nom de classe, tu dois juste nommer les occurences de tes boutons sur la timeline, et le code de gestion du clic doit se référer à chaque occurence, et pas à la classe globale ou je ne sais quoi.

En résumé, tu as un bouton « travaux » dans ta bibli, tu le poses sur ta timeline, dans la palette des propriétés du bouton sur la timeline (je précise et j'insiste), tu inscrits un nom d'occurence, ex « travaux1 », et sur une image clé du mets :
Bloc de code:
travaux1.addEventListener( MouseEvent.CLICK, sous_menu);
function sous_menu( e:Event){
	trace ("clic");
}

Ensuite, quand tu voudras vraiment te mettre à l'AS3, commence par ingurgiter le livre que je t'ai indiqué.