【发布时间】:2018-08-17 05:01:17
【问题描述】:
假设我有以下代码,用于在有人按下按钮 B0 时触发事件:
B0.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
//DoSomething
}
});
这很好用,在大多数情况下更容易,但是当我需要为 20 多个按钮执行此操作时,很难为每个按钮创建单独的方法,因此更优选的工作方式将是大量的 if声明在不同的类中规定事件的来源(组织目的)。
我需要知道的是如何在一个单独的类(例如下面的代码)中从 this 调用 EventHandler 并获得有效的返回,以便程序可以继续。
public class Logic{
public final EventHandler<ActionEvent> getOnAction() {
return null;
}
}
【问题讨论】:
-
EventHandler是一个接口,为什么不实现呢? -
@MadProgrammer 我之前尝试过,但在我给出的第一个代码示例中调用它时遇到了障碍。你能解释一下你会怎么做吗?
标签: java events javafx event-handling