QML:禁用 TabView 中选项卡的延迟加载(或以编程方式打开所有选项卡)

QML: disable lazy-loading of tabs in TabView (or open all of them programatically)

我有一个 TabView,里面有很多 Tab。选项卡内的一些组件定义 Component.onCompleted 来设置数据结构(这些是从 C++ 接口的,必须在 QML 中实例化)。由于 Tab 是延迟加载的,因此 onCompleted 回调不会被调用,直到用户打开相应的选项卡。

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

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