如何解决JFXDialog 关闭 KeyCode.Enter, MouseEvent.Click
当我调用 JFXDialog 时,对话框出现消息和按钮,都很漂亮,我可以通过按下按钮关闭它,但我无法通过使用 KeyCode.Enter 上的键事件关闭它 JFXDialog 是 SceneBuilder 中 JFoenix 的控制单元。 我使用了不同的事件方法,但我没有成功关闭对话框。 有人能帮我解决问题吗?
我使用软和机器: JavaFx,场景构建器 面向 Java 开发人员的 Eclipse IDE 版本:2019-12 (4.14.0) JDK 10.0.2
设置部分:
//create button
JFXButton button = new JFXButton("Hello there!");
//create message layout
JFXDialogLayout dialogLayout = new JFXDialogLayout();
//control dialog
JFXDialog dialog = new JFXDialog(rootPane,dialogLayout,JFXDialog.DialogTransition.TOP);
dialogLayout.setHeading(new Label("text"));
dialogLayout.setBody(new Text("text"));
dialogLayout.setActions(button);
button.addEventHandler(MouseEvent.MOUSE_CLICKED,(e) ->{
dialog.close();
});
以下是我尝试使用的 2 个事件方法示例。 活动部分:
//first method
dialogLayout.setOnKeyPressed(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent k) {
if (k.getCode().equals(KeyCode.ENTER)) {
button.fire();
}
}
});
//second method
button.addEventHandler(KeyEvent.KEY_PRESSED,event2 -> {
if(event2.getCode() == KeyCode.ENTER) {
button.fire();
event2.consume();
}
});
dialog.show();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。