查看 Flex/Flash 构建器调试中的事件侦听器

发布于 2024-11-24 12:46:58 字数 64 浏览 1 评论 0原文

有谁知道如何在 Flex 或 Flash 构建器的调试模式下查看任何组件的事件侦听器?

干杯,PK

Do anyone know how to see the event listeners of any component in the debug mode of the Flex or Flash builder?

Cheers,PK

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

做个ˇ局外人 2024-12-01 12:46:58

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

There is no straightfoward way to enumerate listeners AFAIK.

You can still do what you would usually have to do with methods from the IEventDispatcher interface:

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;
    }
}

Source of the above code: http://livedocs.adobe.com/flex/3/html/help.html?content=16_Event_handling_6.html

你与清晨阳光 2024-12-01 12:46:58

在类上创建一个名为:

private var __numListeners:Number=0;

的变量然后创建一个 set 和 get 方法来编辑该变量......
每次添加或删除侦听器时,它都会使用该方法调整该 var...

this.setNumListeners(1); or whatever

然后可以通过

trace(someObject.getNumListeners())

create a variable on the class called:

private var __numListeners:Number=0;

then create a set and get method to edit that variable...
and each time a listener is added or removed it adjusts that var using that method...

this.setNumListeners(1); or whatever

then it can be accessed through a

trace(someObject.getNumListeners())
我是男神闪亮亮 2024-12-01 12:46:58

如果不编辑应用程序中实现 IEventDispatcher 接口的所有组件,则没有快速方法可以做到这一点。

如果播放器是开源的,那么您可以扩展 EventDispatcher 类以向其中添加跟踪语句,但事实并非如此。

There is no quick way to do this without editing all of the components in your app that implement the IEventDispatcher interface.

If the player was open source then you could extend the EventDispatcher class to add trace statements into it, but it isn't.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文