java - 如何处理 JavaFX 中一个类的多种事件类型?

标签 java javafx javafx-2

在 JavaFX 中,是否可以在一个类中处理多种事件类型(例如 ActionEvent、MouseEvent 等),而无需匿名事件处理程序?我尝试了以下操作,但这只是创建了一个编译时错误。

public class GUI extends Application implements EventHandler<ActionEvent>,
                                                EventHandler<MouseEvent>

最佳答案

是的,但不是以您期望的方式。

据我所知,即使使用不同的类型,您也不能两次实现相同的接口(interface)。

EventHandler<ActionEvent> and EventHandler<MouseEvent>彼此冲突,这就是你最终出现错误的原因。

就像这样...

class CustomEventHandler implements EventHandler<Event>{

    public void handleActionEvent(ActionEvent ke){
        //handle event
    }

    public void handleMouseEvent(MouseEvent me){
        //handle event
    }

    @Override
    public void handle(Event event) {
        //handle event testing
    }

}

然后,您只需测试事件是否属于鼠标类型或操作类型,然后从该函数处理该事件。

关于java - 如何处理 JavaFX 中一个类的多种事件类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31794167/

相关文章:

css - 如何设置菜单按钮和菜单项的样式

JavaFX TabPane 选项卡不更新位置

java - LibGdx:将光线与 ModelInstance 中的网格相交

java - 如何使用 Dropbox Java/Android SDK v2 自动进行身份验证?

Java 数组 - 如何使用静态方法创建数组

JavaFX 不能拖放

java - 数据包 : Effectively representing different packet types

JavaFX:使用 Permanin 扭曲创建板网格

java - 如何在JavaFx中将数组插入到TableView中?

java - 使用 Java Web Start 启动 JavaFX 2.2 应用程序时出错