当JavaFX中的选定选项卡更改时,如何聚焦特定节点?

妮莎·巴尔顿(NikšaBaldun)

我想将焦点设置到选项卡内容中的特定节点。我将ChangeListener添加selectedItem属性中,如下所示(假定该类包含一个名为secondNode且类型为Node的字段):

tabPane.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<Tab>() {
    @Override
    public void changed(ObservableValue<? extends Tab> observable, Tab oldValue, Tab newValue) {
        if (newValue != null) {
            Platform.runLater(new Runnable() {
                @Override
                public void run() {
                    secondNode.requestFocus();
                }
            });
        }
    }
});

但是,这不起作用。我认为原因是因为TabPane在选择了新标签后执行了一些其他操作,这些操作会影响焦点(但是,通过TabPane源代码查看时,我不知道是什么)。如果我在调试器中单步执行此代码,则它可以按预期工作,因此似乎是竞争条件。如果是这样,如何解决?

于尔根

您可以尝试将Runnable替换为Task:

        new Thread( new Task<Void>() 
        {
            @Override
            public Void call() throws Exception // This is NOT on FX thread 
            {
                Thread.sleep(100);
                return null;
            }

            @Override
            public void succeeded()  // This is called on FX thread.
            {
                secondNode.requestFocus();
            }

        }).start();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用StoryBoard在UITabBarController中设置选定的选项卡?

来自分类Dev

如何在jQuery中获取选定的选项卡名称

来自分类Dev

更改JavaFx选项卡的默认外观

来自分类Dev

Android如何在选项卡更改时停止刷新片段

来自分类Dev

纯CSS选项卡-防止在选项卡更改时滚动到页面顶部

来自分类Dev

如何在角度引导ui的活动导航选项卡中聚焦第一输入字段?

来自分类Dev

如何使用FXML在JavaFX中动态创建选项卡?

来自分类Dev

选择的选项卡更改时,WPF TabItem状态丢失

来自分类Dev

如何使用Android中的代码使用TabLayout更改选定的选项卡文本颜色?

来自分类Dev

如何在Pycharm中的特定文件中更改选项卡大小

来自分类Dev

如何使终端中的选定选项卡更加突出

来自分类Dev

如何在反应物料选项卡中从父级更改选项卡

来自分类Dev

选项卡更改时清除视图数据SwiftUI

来自分类Dev

更改选项卡时如何调用子选项卡NativeBase中的函数

来自分类Dev

如何使终端中的选定选项卡更加突出

来自分类Dev

如何仅绘制选定的选项卡

来自分类Dev

更改JavaFx选项卡的默认外观

来自分类Dev

chrome扩展程序中的选项卡更改时的页面内容

来自分类Dev

如何防止页面在页面索引更改时丢失选项卡选择?

来自分类Dev

如何在选择更改时更新vaadin选项卡中的内容?

来自分类Dev

如何使选定的选项卡更改颜色?

来自分类Dev

如何更改TabControl选定的选项卡

来自分类Dev

如何在Pycharm中的特定文件中更改选项卡大小

来自分类Dev

如何用代码更改BottomNavigationView的选定选项卡?

来自分类Dev

在选项卡更改时切换内容

来自分类Dev

如何在 SelectedTabChangeListener 中识别选定的选项卡?

来自分类Dev

选项卡更改时如何更改工具栏标题(查看分页器)?

来自分类Dev

如何在 Eclipse 的选项卡列表中更改当前活动选项卡的背景?

来自分类Dev

如何覆盖选项卡的选定样式?

Related 相关文章

  1. 1

    如何使用StoryBoard在UITabBarController中设置选定的选项卡?

  2. 2

    如何在jQuery中获取选定的选项卡名称

  3. 3

    更改JavaFx选项卡的默认外观

  4. 4

    Android如何在选项卡更改时停止刷新片段

  5. 5

    纯CSS选项卡-防止在选项卡更改时滚动到页面顶部

  6. 6

    如何在角度引导ui的活动导航选项卡中聚焦第一输入字段?

  7. 7

    如何使用FXML在JavaFX中动态创建选项卡?

  8. 8

    选择的选项卡更改时,WPF TabItem状态丢失

  9. 9

    如何使用Android中的代码使用TabLayout更改选定的选项卡文本颜色?

  10. 10

    如何在Pycharm中的特定文件中更改选项卡大小

  11. 11

    如何使终端中的选定选项卡更加突出

  12. 12

    如何在反应物料选项卡中从父级更改选项卡

  13. 13

    选项卡更改时清除视图数据SwiftUI

  14. 14

    更改选项卡时如何调用子选项卡NativeBase中的函数

  15. 15

    如何使终端中的选定选项卡更加突出

  16. 16

    如何仅绘制选定的选项卡

  17. 17

    更改JavaFx选项卡的默认外观

  18. 18

    chrome扩展程序中的选项卡更改时的页面内容

  19. 19

    如何防止页面在页面索引更改时丢失选项卡选择?

  20. 20

    如何在选择更改时更新vaadin选项卡中的内容?

  21. 21

    如何使选定的选项卡更改颜色?

  22. 22

    如何更改TabControl选定的选项卡

  23. 23

    如何在Pycharm中的特定文件中更改选项卡大小

  24. 24

    如何用代码更改BottomNavigationView的选定选项卡?

  25. 25

    在选项卡更改时切换内容

  26. 26

    如何在 SelectedTabChangeListener 中识别选定的选项卡?

  27. 27

    选项卡更改时如何更改工具栏标题(查看分页器)?

  28. 28

    如何在 Eclipse 的选项卡列表中更改当前活动选项卡的背景?

  29. 29

    如何覆盖选项卡的选定样式?

热门标签

归档