我在场景中有一个按钮,每当按下空格键或回车键时,这个按钮都会自动触发。我希望用户能够在不触发此按钮的情况下键入这些键。我已经尝试过在场景中的其他节点上执行并调用请求焦点方法。如何防止在按下这些键时触发此按钮。感谢您的任何帮助。root.requestFocus()编辑:到目前为止,我刚刚完成了使Javafx应用程序工作的样板代码,添加了该按钮和一些标签。我已经在应用程序中的几个节点中尝试了 requestFocus() 方法,但这些节点都没有带来任何影响。我还有一个动作事件侦听器,用于按下的键。scene.setOnKeyPressed
3 回答
慕的地10843
TA贡献1785条经验 获得超8个赞
您可以使用该方法(文档)。这可以防止按钮自动聚焦,例如通过按 Tab 键。button.setFocusTraversable()
Button button = new Button("Some Action");
button.setFocusTraversable(false);
button.setOnAction(event -> System.out.println("Some action called!"));
小唯快跑啊
TA贡献1863条经验 获得超2个赞
假设你有焦点,你不希望你做它的默认行为,即在被点击时为自己(和远离)焦点。当获得焦点时,此代码将立即将焦点交还给 。defaultFocusNode
button
defaultFocusNode
button
button
defaultFocusNode
button.focusedProperty().addListener((observableValue, oldValue, newValue) -> { if (newValue) defaultFocusNode.requestFocus(); });
添加回答
举报
0/150
提交
取消