JavaFX 相对于 Swing setFocusable(true/false)?

JavaFX relative to Swing setFocusable(true/false)?

我正在尝试找到一些方法来在 JavaFX 中制作一个 UI 控制 unfocusabe

是否有类似于 Swing 的东西,或者我是否必须重写某些方法?

更新:

我想让控件完全不可聚焦并且不将焦点转移到另一个 Node

您可以做的是:

node.setFocusTraversable(false);

Node 上,基本上每个控件都继承了 focusProperty()。您可以将某些东西绑定到那个 属性 或添加一个 ChangeListener 来检测焦点何时丢失:

focusedProperty().addListener((observalbe, oldFocusedState, newFocusedState) -> {
  System.out.println("Control changed focused state from "+oldFocusedState+"->"+newFocusedState);
});

也许你想要的是 editable 属性 @see TextField#setEditable!

我已经回答了这个问题。请检查一下。

这将向您展示如何永远移除节点上的焦点,移除它一段时间,或者使节点不可遍历。

Is there a way to take away focus in javafx?