JavaFX将键绑定到按钮 [英] JavaFX bind key to button
本文介绍了JavaFX将键绑定到按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我在舞台上有这个按钮:
So I have this button on my stage:
@FXML
public void generateButton(ActionEvent event) {
String fingerprint = fingerprintText.getText().toLowerCase();
String erg = Verifier.getDdProUnlockPIN(fingerprint);
pinField.setText(erg);
copyText = erg;
log.info("Pin " + erg + "wird generiert");
}
现在我希望在按下Enter键时触发它,但是怎么样?
Now I want it to be triggered when the Enter Key is being pressed, but how?
推荐答案
拳头,在你的按钮上设置一个hanlder:
Fist, set a hanlder on your button :
myButton.setOnAction(e -> {
......
});
如果按钮具有焦点,按Enter将自动调用此处理程序。否则,您可以在start方法中执行此操作:
If the button has the focus, pressing Enter will automatically call this handler. Otherwise, you can do this in you start method :
@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) {
myButton.fire();
ev.consume();
}
});
}
如果你只有一个这样的按钮,你可以改用
} If you have only one button of this kind, you can use instead
myButton.setDefaultButton(true);
这篇关于JavaFX将键绑定到按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文