JavaFX 如何更改快捷键的默认功能?
JavaFX How to change the default function of shortcut key?
VBox 中有两个按钮。如果单击第一个按钮,然后按"TAB",焦点框将移动到第二个按钮。所以我的问题是,如果我想将 "TAB" 用于其他功能,我该如何更改或取消或阻止 JavaFX 中 "TAB" 的默认功能?
Button btn1 = new Button("First Button");
Button btn2 = new Button("Second Button");
VBox root = new VBox();
root.getChildren().addAll(btn1,btn2);
您需要使用其中一种setOnKeyPressed/Released/Typed方法。然后施展你的魔法。例如只消耗它,以防止按钮之间的切换。
btn1.setOnKeyPressed(e->{
if (e.getCode() == KeyCode.TAB) {
e.consume();
}
});
VBox 中有两个按钮。如果单击第一个按钮,然后按"TAB",焦点框将移动到第二个按钮。所以我的问题是,如果我想将 "TAB" 用于其他功能,我该如何更改或取消或阻止 JavaFX 中 "TAB" 的默认功能?
Button btn1 = new Button("First Button");
Button btn2 = new Button("Second Button");
VBox root = new VBox();
root.getChildren().addAll(btn1,btn2);
您需要使用其中一种setOnKeyPressed/Released/Typed方法。然后施展你的魔法。例如只消耗它,以防止按钮之间的切换。
btn1.setOnKeyPressed(e->{
if (e.getCode() == KeyCode.TAB) {
e.consume();
}
});