Création d'événements personnalisés dans ActionScript 3.0 est simple. Utilisez-les, puis, vous permet d'utiliser la méthode addEventListener() et faire de notre objet de toutes les normes. ) BottoneEvent . Si nous avons créé une classe, par exemple, Bottone , cela est correct d'associer à un ou plusieurs événements à travers une classe spéciale (dérivée de la classe Event ) BottoneEvent . Nous pourrions faire tous les événements qui affectent le fonctionnement de notre sujet: le clic de souris, de plus, ou tout autre événement! Aussi la définition de notre personnel et constant. Le squelette - générique - une classe d'événement personnalisée est la suivante:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | package { / * ** @ Nom: BottoneEvent.as ** @ Description: classe dérivée de l'événement à gérer leur propre événement sur mesure ** @ Auteur: = undo = @ ** Web: http://www.undolog.com ** @ E-mail: @ g.fazioli undolog.com * / .*; flash.events importation *.; BottoneEvent extends Event { BottoneEvent étend la classe publique de l'événement { String = 'pluto' ; // codice qualsiasi, anche 'mioevento' in minuscolo public static const MIOEVENTO: Chaîne = 'bar', / / tout code, même «mioevento 'en minuscules Valore : Number = NaN ; publique valeur var: Nombre = NaN; / * ** @ Nom: BottoneEvent ** @ Description: constructeur * / type , bubbles , cancelable ) ; super (type, bubbles, cancelable); Value = v ; cette valeur = v.; } / * @ Override ** * / clone ( ) : Event { publique clone override function (): Event { this . type , this . Value , this . bubbles , this . cancelable ) ; return new KnobEvent (type this., cette valeur, bulles, ce peut être annulée...); } } } |
Dans la classe Bottone , la situation est encore plus facile! Prenez par exemple la portion de code qui génère l'événement, au sein de la classe Bottone :
1 2 3 4 5 6 7 8 | / * @ Nom **: maMethode () * / mioMetodo ( ) : void { myMethod fonction publique (): void { / / Quelque chose se passe et nous avons besoin de créer un événement / / Le passage d'une valeur new BottoneEvent ( BottoneEvent . MIOEVENTO , 1234 ) ) ; dispatchEvent (nouveau BottoneEvent (BottoneEvent. MIOEVENTO, 1234)); } |
Côté demande, bien sûr, nous allons utiliser notre classe Bottone comme tous les autres:
1 2 3 4 5 6 7 8 9 10 | Importer le bouton; Les importations BottoneEvent; / / Bottone = new Bottone ( ) ; var foo: bouton = new Button (); ( BottoneEvent . MIOEVENTO , foo. addEventListener (BottoneEvent. MIOEVENTO, e : BottoneEvent ) : void { function (e: BottoneEvent): void { / / Do! e . type + ' / ' + e . Value ) ; // 'pluto / 1234' trace (et. type + '/' + e. Valeur) / / "bar / 1234 ' } ); |










Il n'y a aucun commentaire pour cet article
Laisser un commentaire