首先,在按钮上设置一个汉德尔:
okayButton.setOnAction(e -> {
......
});
如果按钮具有焦点,则按 Enter 将自动调用此处理程序。否则,您可以在方法中执行此操作:start
@Override
public void start(Stage primaryStage) {
// ...
Node root = ...;
setGlobalEventHandler(root);
Scene scene = new Scene(root, 0, 0);
primaryStage.setScene(scene);
primaryStage.show();
}
private void setGlobalEventHandler(Node root) {
root.addEventHandler(KeyEvent.KEY_PRESSED, ev -> {
if (ev.getCode() == KeyCode.ENTER) {
okayButton.fire();
ev.consume();
}
});
}
如果您只有一个此类按钮,则可以改用以下方法。
okayButton.setDefaultButton(true);