1 votes

Comment voir tous les événements déclenchés par un objet ?

J'ai des difficultés à connecter un écouteur d'événement à une transition fl.transitions.Transition.

Est-il possible de visualiser d'une manière ou d'une autre tous les événements déclenchés par un objet ? De cette façon, je pourrais vérifier que j'utilise le bon événement (et éventuellement en voir de meilleurs à utiliser).

3voto

back2dos Points 13253

La solution la plus simple consiste à remplacer l'option dispatchEvent dans les classes où vous souhaitez intercepter des événements.
Vous pouvez trouver les classes dans %CS_ROOT%\Common\First Run\Classes\mx\transitions\easing\ .

Vous pouvez également créer une sous-classe de EventDispatcher avec un dispatchEvent et l'utiliser comme sous-classe pour toutes les classes dans lesquelles vous souhaitez intercepter des événements.

salutations
back2dos

1voto

Robusto Points 17430

Le problème est que vous devez avoir un type d'événement à écouter. La seule façon de procéder est d'ajouter des récepteurs pour tous les événements possibles.

Maintenant, vous pouvez ajouter un gestionnaire avec un type d'événement indéterminé, comme par exemple :

private function myUniversalHandler(event:*) : void {
  trace(event.type);
  trace(event.constructor.toString());
}

Ce dernier signalera tout événement qui lui sera transmis. Néanmoins, il ne sera appelé que s'il est à l'écoute d'un événement d'un type particulier. Et l'ajout de tous ces écouteurs représente un travail considérable. Il est préférable d'étudier les événements disponibles dans la classe à partir de laquelle vous envoyez l'événement.

1voto

ThatSteveGuy Points 885

Je regarderais du côté du TransitionManager, et des événements allTransitionsOutDone et allTransitionsInDone qu'il dispatche. Je ne les ai pas utilisés, mais ma compréhension de leur fonction correspond à ce que vous semblez rechercher.

0voto

Amarghosh Points 33957

Il n'est pas possible d'obtenir par programme une liste de tous les événements déclenchés par un objet donné. Vous pouvez cependant obtenir une liste des tous les événements déclenchés par un objet de la bibliothèque standard (qui font partie de son interface publique) à partir de son la documentation (cliquez sur le lien des manifestations héritées) et décidez si vous utilisez la bonne.

0voto

dreamfuleyes Points 11

Vérifier la référence en ligne vous devriez y voir tous les événements (et les événements hérités) d'une classe.
Par ailleurs, si vous utilisez flex, il se peut que vous utilisiez mx.states.Transition.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X