JavaFX/TreeTableView : Relationship between Selection and Focus

标签 javafx focus selection treetable

我需要澄清一下 javafx.scene.control.TreeTableViewFocusSelection 之间的关系。

在我的代码中我定义了:

ttvMainTree.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);

假设 1:我假设焦点项目始终是左键单击的最后一个项目。我还假设左键单击总是移动选择。因此,在 SelectionMode.SINGLE 中,焦点项目和所选项目始终相同。

这在 90% 的情况下似乎都是正确的。无论如何,在随机单击左键之后,我的代码生成了这样的图片:

enter image description here

请确认:

  • 蓝色背景的项目是所选项目
  • 带有蓝色边框的项目是焦点项目

这里可以通过左键单击来更改焦点项目,所选项目似乎不受左键单击的影响。

很抱歉没有提供 SSCCE 。目前我不知道如何缩短我的代码并重现这种行为。

因此有一个一般性问题:

  • 假设 1 有什么问题?

最佳答案

以我的拙见,我认为两者的行为没有区别,正如您所说,当您选择 Node 时,这只是一种关系。 ,这一项请求焦点。 可以使用“focusTraversable”控制焦点:

focusTraversable : Specifies whether this Node should be a part of focus traversal cycle. When this property is true focus can be moved to this Node and from this Node using regular focus traversal keys.

对于你的情况,我想可能是因为你选择了 TreeTableView即既是 child 又是 parent Child 2 !

关于JavaFX/TreeTableView : Relationship between Selection and Focus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41724669/

相关文章:

javascript - 在 HTML 中选择后保持范围对象的更改

html - 如何禁用 <li> 中的文本选择

javascript - Highcharts 列范围中的矩形选择

intellij-idea - 运行 mvn jfx :run with IntelliJ 时出现 UnsatisfiedLinkError

javascript - 防止在普通 javascript 中点击按钮

html - 嵌套元素的 WCAG 可访问性问题

javascript - 如何将焦点设置在html表格最后一行第二列的输入控件上

java - boolean 值不会从 Object.getBoolean() 更新;

java - 无法在 Eclipse Kepler 中找到 JavaFX 透视图

Debian Linux 中的 JavaFX MediaPlayer 异常