Dans le prolongement avec le tutorial (001 - 002 - 003 - 004 - 005)
3.2.2. Suppression EventListeners?
Le EventListener sont très utiles comme on l'a vu ci-dessus, mais en même temps mai être à l'origine des problèmes, et le surchargeant. Swf fin, nous allons voir dans le cas de vouloir à moi seul que le bouton juste tirez le cas cliquez une fois . Dans le cas expliqué ci-dessus le feu toujours le cas cliquez sur le bouton et tout au long de la souris sur le temps. Swf a ouvert, puis, si notre but est juste d'apprendre la première fois que le bouton est cliqué, laissant le code sur un Bad but, comme il serait exécuté quand l'utilisateur clique sur le bouton. Voici l'entrée de la removeListner, est que, si nous voulons tirer le bouton une seule fois la fonction associée à l'événement Click que nous supprimons ce eventListner Donc, notre objectif est complet (seulement appel à la fonction une fois) et pour que nous allions faire les choses suivantes, en utilisant la fonction ci-dessus:
meuBotao1.addEventListener (MouseEvent.CLICK, botao_evento); { botao_evento privé function (evt: MouseEvent): void (
switch (evt.type) ( MouseEvent.CLICK cas: MeuBotao1.move (btn.x 5, btn.y +5); / / Nous avons terminé l'objectif, une fois que nous l'enlever eventListner: meuBotao1.removeEventListener (MouseEvent.CLICK, botao_evento); break; ) Cette fois, la fonction botao_evento seulement être appelée une fois par EventListener depuis retiré son EventListener:
meuBotao1.removeEventListener (MouseEvent.CLICK, botao_evento); (addEventListener) incluindo a função a ele associada ( botao_click ), já que podem existir várias funções associadas ao mesmo eventListner: removeEventListener que nous ne disposons que de se conformer à une règle, l'événement à enlever devront être exactement égal (MouseEvent.CLICK) ajouté à l'(addEventListener), y compris la fonction associée (botao_click), mai comme il être plusieurs fonctions associées à la même eventListner:
meuBotao1.removeEventListener (MouseEvent.CLICK, botao_evento);
Note:
Garbage Collector:
Comme le nom l'indique, traduit la lettre, est un reconhedor ordures, est un mécanisme pour le lecteur flash a, pendant l'exécution, le swf inspecter régulièrement et de supprimer des éléments, des objets et des références à gauche non utilisés ou oubliés par le programmeur.
En général, les événements ne sont pas inspecté ou enlevé par garbage collector dans cette collection, parce que le programmeur doit avoir la bonne idée de les supprimer, mais si le démarreur, probablement oublier un événement ou d'une autre listener, et donc une bonne pratique de leur marque Les auditeurs cas d'être inspectés par les collecteur d'ordures enlevées et, si nécessaire, pour à le faire lors de la création de votre événement auditeur doit garder à l'esprit un peu plus de paramètres (dont un seul est le plus important).
Je veux parler d'un argument (useWeakReference) indique que le garbage collector à inspecter et enlever si elle n'est pas exacte, cet argument est le numéro 5 sur la liste des arguments de addEventListener:
=0, addEventListener (type: String, Lištná: Fonction, useCapture: booléen = false, la priorité: int = 0,
useWeakReference: booléen = false) Ces 3 paramètres à être plus sombres sont facultatifs, expliquant:
useCapture: Il sert à "respecter" le "chemin de l'événement" jusqu'à ce qu'il soit tiré dans leur "cible" objet. Par défaut, le faux, et devrait donc être en laissant au moins presque toujours.
Priorité: permet de configurer la priorité de cet événement, où il ya de nombreux événements associés à l'objet. Par défaut à 0, presque toujours bien utilisés.
useWeakReference: Le plus important des 3, que comme une question de bonnes pratiques doivent être considérées comme de véritables utiliser ce paramètre indique que le garbage collector à supprimer si elle est déplacée.
Le recours à cette option n'est pas une alternative à removeEventListener et ne doit pas être utilisé en tant que tel (toujours utiliser le removeEventListener), mais devrait être utilisé comme une question de pratique, de sorte avant notre événement auditeurs doivent utiliser le pass:
); meuBotao1.addEventListener (MouseEvent.CLICK, botao_evento, false, 0, true);
); meuBotao1.addEventListener (MouseEvent.MOUSE_OVER, botao_evento, false, 0, true);
); meuBotao1.addEventListener (MouseEvent.MOUSE_OUT, botao_evento, false, 0, true);
Si vous commencez à gagner de cette habitude, à peine ont des problèmes avec la mémoire EventListener, même si vous oubliez de les enlever, car après tout, il parle très mal le système de nettoyage de déchets le lecteur Flash, mais beaucoup de ces problèmes prouver les mauvaises habitudes de programmation, de sorte qu'il est hautement conseillé de suivre les meilleures pratiques tant pour la programmation en action script comme tout autre langage de programmation.
Il ya quelques points sur lesquels nous devrions avoir une considération particulière au cours de l'élaboration d'une animation ou de l'application, mais nous en reparlerons plus tard.
Comme pour travailler avec les événements, les choses sont déjà pris la parole pour, nous pouvons utiliser des événements à presque tout, et au cours de votre apprentissage et le développement dans la programmation avec bien sûr, ils trouveront de nombreuses applications pratiques pour les événements et comment ils peuvent devenir presque indispensable.
Dans la prochaine partie, nous parlons de quelque chose de très important dans la nouvelle version de l'Action Script (3), qui diffère tout à fait une présentation graphique de nos éléments po Swf final, je parle de la Liste.
Suite ...
Une accolade.
http://creativecommons.org/licenses/by-nc-nd/3.0/deed.pt














6 Commentaires
Mario peut parler de TBM xml

Bonjour Mario ... Travailler dans Goiania et nous allons adopter le flex ... la commande est Action Script d'apprentissage et il est très facile avec votre aide
Félicitations et merci pour les contributions, nous sommes tous un oeil sur vos postes!
Michel, vous parlez de XML d'abord d'expliquer la structure fonctionne bien en tant que XML, des objets et des éléments de la chaîne à venir ... ... prenez votre temps
Je dois commencer lentement que ceux qui ne comprennent pas beaucoup de AS3 facilement être perdu et au lieu de simplement expliquer compliqué ...
Julierme Barros.
Même s'il est d'aider
Est-il facile d'être accompagner les didacticiels? ou à abrabndar le rythme un peu et d'expliquer les étapes? Pour commencer est facile d'être juste?
J'attends plus de commentaires.
Serrer dans ses bras.
Oui vous êtes très calme .... Somo programmeurs Java et est (jusqu'ici) un merveilleux hehe
Comme je le démarreur à AS blz Je pense que le rythme et les explications.
Merci et continuez avec la mise à jour régulièrement
sont grands!
Serrer dans ses bras!
Bonjour
J'ai aimé beaucoup de l'Office de l'AS3 mais je suis de la difficulté à trouver toutes les parties du Bureau de sorte que vous pouvez obtenir à la fin.
Vous pouvez m'envoyer les liens à tous?
Merci!
Marcelo bonne, les didacticiels (11 actions pour l'instant) ont été compilés dans un livre électronique:
voir:
http://msdevstudio.com/blog/2008/06/30/tutorial-action-script-3-parte-io-livro/
serrer dans ses bras.