我有一个GridPane(称为工作空间),里面有很多不同的东西,比如tableview,多个按钮和另一个GridPane。
我有以下代码:
workspace.setOnKeyPressed(e -> {
if (e.isControlDown() && e.getCode() == (KeyCode.A)) {
System.out.println("B Pressed");
} else if (e.isControlDown() && e.getCode() == (KeyCode.B){
System.out.println("A Pressed");
}
});
如果选择了某些内容,则按A和B仅起作用(打印输出)。例如,如果我点击tableview以使其处于焦点或我单击其中一个按钮。如果没有任何焦点(通过我点击按钮或桌面视图之外的某处),按A或B不会执行任何操作。
有什么方法可以解决这个问题吗?我希望它能够工作,即使没有任何焦点。
答案 0 :(得分:0)
您是否尝试使用过,但请确保在显示舞台后将其放置。例如:
foo = Session.query(A).filter(....).with_for_update().one()
这可以解决您的问题。
答案 1 :(得分:0)
在根节点上设置处理程序。
yourRootNode.setOnKeyPressed(e -> {
if (e.isControlDown() && e.getCode() == (KeyCode.A)) {
System.out.println("B Pressed");
} else if (e.isControlDown() && e.getCode() == (KeyCode.B){
System.out.println("A Pressed");
}
});