JavaFX如何更改快捷键的默认功能?

时间:2017-09-24 13:57:16

标签: javafx javafx-2 javafx-8

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);

1 个答案:

答案 0 :(得分:0)

您需要使用setOnKeyPressed / Released / Typed方法之一。然后做你的魔法。例如,只需消耗它,以防止按钮之间的切换。

    btn1.setOnKeyPressed(e->{
        if (e.getCode() == KeyCode.TAB) {
            e.consume();
        }
    });