【问题标题】:JavaFX / TreeTableView: Relationship between Selection and FocusJavaFX / TreeTableView:选择和焦点之间的关系
【发布时间】:2017-01-18 16:34:28
【问题描述】:

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

在我的代码中我定义了:

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

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

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

请确认:

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

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

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

因此提出一个一般性问题:

  • 假设 1 有什么问题?

【问题讨论】:

    标签: javafx focus selection treetable


    【解决方案1】:

    以我的拙见,我认为两者的行为没有区别,就像您所说的那样,当您选择Node时,这是一种关系,这个请求重点。 焦点可以通过“focusTraversable”来控制:

    focusTraversable :指定此节点是否应成为焦点遍历循环的一部分。当此属性为 true 时,可以使用常规焦点遍历键将焦点移动到该节点并从该节点移动。

    对于你的情况,我想可能是因为你选择了一个TreeTableView,它既是孩子又是父母Child 2

    【讨论】:

      【解决方案2】:

      找到我的应用程序异常行为的原因: 选择侦听器导致数据模型的更新。基本上,带有子元素的列表被删除,并再次填充了相同的数据。这导致了选择模型的混乱。

      【讨论】:

        猜你喜欢
        • 2018-04-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-19
        • 1970-01-01
        • 2015-05-21
        相关资源
        最近更新 更多