【问题标题】:QML: disable lazy-loading of tabs in TabView (or open all of them programatically)QML:禁用 TabView 中选项卡的延迟加载(或以编程方式打开所有选项卡)
【发布时间】:2019-08-12 09:29:50
【问题描述】:

我有一个TabView 和多个Tabs。选项卡中的一些组件定义了Component.onCompleted 来设置数据结构(这些是从 c++ 接口的,并且必须在 QML 中实例化)。由于Tabs 是延迟加载的,所以在用户打开相应的选项卡之前不会调用onCompleted 回调。

有没有办法让所有选项卡在启动时加载?我目前在TabView 中使用Component.onCompleted{ currentIndex=1; } 打开第二个选项卡,但我想在创建整个界面时循环打开所有这些选项卡,无需用户交互。我尝试在 onCompleted 中的所有可用选项卡索引上使用 currentIndex 循环,但这没有任何效果。

【问题讨论】:

  • 您可以使用 TabBar 并实例化所有选项卡但不可见,除了与 TabBar 的正确索引匹配的选项卡(请参阅 docs )

标签: qml lazy-loading tabview


【解决方案1】:

由于Tab继承自Loader,您可以将其active property设置为true。

【讨论】:

    猜你喜欢
    • 2018-02-01
    • 1970-01-01
    • 2021-12-08
    • 2014-08-16
    • 2016-12-30
    • 1970-01-01
    • 1970-01-01
    • 2011-03-17
    • 1970-01-01
    相关资源
    最近更新 更多