Auteur: Jérôme Forget. Publié le 13 juillet 2006.
Afin que Flash réponde lorsqu'un utilisateur clique un bouton, quelques lignes de code ActionScript seront nécessaires. La longueur du code dépend en fait du type de bouton que l'on utilise, que ce soit un composant Button ou une instance de clip ou de bouton.
Si vous avez utilisé un composant Button, il faut:
Un objet d'écoute est un objet de programmation qui attend - qui écoute - qu'un composant fasse quelque chose. Ce quelque chose est appelé un événement, et l'objet d'écoute attend que cet événement se produise pour exécuter une action. Chaque composant peut produire certains événements. L'événement click() est un événement du composant Button, mais aussi de quelques autres composants. Consultez l'aide de Flash pour voir quels événements sont disponibles pour un composant.
Créons d'abord l'objet d'écoute.
var oEcoute:Object = new Object();
Nous définirons ensuite une méthode qui correspond à l'événement que l'on attend. Dans cet exemple, Flash va afficher un message dans le panneau de Sortie:
oEcoute.click = function(oEvenement:Object):Void {
trace("Le bouton a été cliqué.");
};
Finalement, on lie l'objet d'écoute et le composant en spécifiant le type d'événement. On appelle la méthode addEventListener() de l'instance du composant et passe deux paramètres: le nom de l'événement en chaîne de caractères et une référence à l'objet d'écoute. Dans cet exemple, un objet d'écoute oEcoute attend les clics sur le bouton nommé cBouton:
cBouton.addEventListener("click", oEcoute);
Cette technique peut sembler compliquée au premier abord. Après quelques utilisations, vous connaîtrez bien ce bout de code et pourrez l'utiliser de la même façon pour tous les composants.
Voyez maintenant comment réagir à un clic sur une instance de clip ou de bouton. Dans ce cas-ci, nous n'aurons pas besoin d'objet d'écoute du tout. On utilisera plutôt le gestionnaire d'événement onRelease() de l'instance. Regardez l'exemple suivant qui définit un gestionnaire d'événements sur une instance de bouton nommée btEnvoyer:
btEnvoyer.onRelease = function():Void {
trace("Vous avez cliqué le bouton Envoyer.");
}
Vous pouvez remplacer la ligne du trace() dans cet exemple par n'importe quel code qui effectuera ce que vous désirez. Sinon, la syntaxe reste la même pour toutes les instances de clips et de boutons.