为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 JavaFX 中的不同类调用 EventHandler

如何从 JavaFX 中的不同类调用 EventHandler

慕容708150 2021-07-15 15:15:37
假设我有以下代码,用于在有人按下按钮 B0 时触发事件:        B0.setOnAction(new EventHandler<ActionEvent>() {        @Override        public void handle(ActionEvent event) {         //DoSomething        }    });这工作正常,在大多数情况下更容易,但是当我需要为 20 多个按钮执行此操作时,为每个按钮创建单独的方法变得困难,因此更优选的工作方式将是大量的 if 语句来指示不同类中的事件源(组织目的)。我需要知道的是如何在单独的类(例如下面的代码)中从此调用 EventHandler 并获得有效的返回值,以便程序可以继续。public class Logic{   public final EventHandler<ActionEvent> getOnAction() {    return null;  }}
查看完整描述

1 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

EventHandler<T>是一个interface,为什么不只是implement它?


public class SupaDupaHandler implements EventHandler<ActionEvent> {


    @Override

    public void handle(ActionEvent event) {

    }


}

然后在你的代码中你可以做......


SupaDupaHandler handler = new SupaDupaHandler();

btn.setOnAction(handler);

// And repeat 20 times

或者直接...


btn.setOnAction(new SupaDupaHandler());

根据您的需要


查看完整回答
反对 回复 2021-07-29
  • 1 回答
  • 0 关注
  • 248 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信