我对 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");
}
}