См. Слушателей событий в отладке Flex / Flash Builder. - PullRequest
0 голосов
/ 16 июля 2011

Кто-нибудь знает, как увидеть прослушиватели событий любого компонента в режиме отладки Flex или Flash Builder?

Cheers, PK

Ответы [ 3 ]

0 голосов
/ 16 июля 2011

создайте переменную в классе с именем:

private var __numListeners: Number = 0;

, затем создайте метод set и get для редактирования этой переменной ... и каждый раз слушательдобавляется или удаляется, он корректирует эту переменную, используя этот метод ...

this.setNumListeners(1); or whatever

, затем к нему можно получить доступ через

trace(someObject.getNumListeners())
0 голосов
/ 16 июля 2011

Нет быстрого способа сделать это без редактирования всех компонентов вашего приложения, которые реализуют интерфейс IEventDispatcher.

Если проигрыватель был с открытым исходным кодом, вы могли бы расширить класс EventDispatcher для добавления в него операторов трассировки, но это не так.

0 голосов
/ 16 июля 2011

Нет прямого способа перечислить слушателей AFAIK.

Вы все еще можете делать то, что обычно делаете с методами из интерфейса IEventDispatcher:

package flash.events
{
    public interface IEventDispatcher
    {
        function addEventListener(eventName:String, 
                        listener:Object,
                        useCapture:Boolean=false,
                        priority:Integer=0,
                            useWeakReference:Boolean=false):Boolean;

        function removeEventListener(eventName:String, 
                    listener:Object,
                    useCapture:Boolean=false):Boolean;

        function dispatchEvent(eventObject:Event):Boolean;

        function hasEventListener(eventName:String):Boolean;
        function willTrigger(eventName:String):Boolean;
    }
}

Источник вышеприведенного кода: http://livedocs.adobe.com/flex/3/html/help.html?content=16_Event_handling_6.html

...