JavaFX中有类似于AWTListener的东西吗?

JavaFX中有类似于AWTListener的东西吗?,javafx,Javafx,我正在寻找一种在JavaFX应用程序中捕获所有事件(特别是键盘/鼠标事件)的方法。JavaFX中有类似于AWTListener的东西吗?在Java中,通过创建AWTListener并将其添加到默认工具包中,我可以捕获所有事件 添加一些背景信息 我参与了Marathon,一个用于Java/Swing应用程序的测试自动化工具,目前正在评估添加JavaFX支持的复杂性。根据设计,我无法访问JavaFX应用程序本身。对于Java/Swing,我们使用javaagent将Marathon钩子加载到AUT中

我正在寻找一种在JavaFX应用程序中捕获所有事件(特别是键盘/鼠标事件)的方法。JavaFX中有类似于AWTListener的东西吗?在Java中,通过创建AWTListener并将其添加到默认工具包中,我可以捕获所有事件

添加一些背景信息


我参与了Marathon,一个用于Java/Swing应用程序的测试自动化工具,目前正在评估添加JavaFX支持的复杂性。根据设计,我无法访问JavaFX应用程序本身。对于Java/Swing,我们使用javaagent将Marathon钩子加载到AUT中,并使用AWTListener侦听所有事件。我怀疑JavaFX也可以实现类似的功能。

不确定如何实现您的目标,但我想先看一下
场景的
事件调度器

final EventDispatcher eventDispatcher = scene.getEventDispatcher();
scene.setEventDispatcher( new EventDispatcher()
{
    @Override
    public Event dispatchEvent( final Event event, final EventDispatchChain tail )
    {
        System.out.println( "Dispatching event [" + event + "]." );
        return eventDispatcher.dispatchEvent( event, tail );
    }
} );

查看上的事件捕获功能,可能与您想要的类似。我不知道它是如何工作的,也不知道它的源代码。您可以询问ScenicView开发人员。即使ScenicView处理它的方式不完全是您想要做的,开发人员也可能知道实现您想要的东西的好方法。感谢您提供的信息。参观了风景区,并试图与开发商取得联系,但没有成功。java.net论坛上的一个帖子提供了一些信息,但这没有帮助。目前,我正在考虑在构建节点时使用java代理工具添加处理程序。我将把我的发现张贴在这里。