我对 JavaFX 中的事件处理有疑问。根据教程(以及我遇到的其他示例),JavaFX 中的事件处理方式如下:

Button addBtn = new Button("Add");
addBtn.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
            System.out.println("Add Clicked");
    }
});

但是,我想知道,如果我可以“处理”按钮,请按以下方式单击:
Button addBtn = new Button("Add");
addBtn.setOnAction(new addButtonClicked());

其中 addButtonClicked() 是我自己定义和编写的用于处理按钮单击操作的类(具有自己的一组方法和功能)。

有没有办法为 JavaFX 中的按钮附加我自己的事件处理程序类?

最佳答案

EventHandler 是一个接口(interface)类。
所以,它应该是“实现”而不是“扩展”

private static class AddButtonClicked implements EventHandler<ActionEvent> {
     @Override
     public void handle(ActionEvent event) {
          System.out.println("My Very Own Private Button Handler");
     }
}

10-07 19:30
查看更多