qt - QML TabView 创建顺序
问题描述
在 QML 中使用以下代码:
import QtQuick 2.14
import QtQuick.Controls 1.4
TabView {
Tab {
id: firstTab
Component.onCompleted: {
console.log("1")
}
Rectangle {
id: firstTabRectangle
Component.onCompleted: {
console.log("2")
}
}
}
Tab {
id: secondTab
Component.onCompleted: {
console.log("3")
}
Rectangle {
id: secondTabRectangle
Component.onCompleted: {
console.log("4")
}
}
}
}
现在的问题是:
执行代码时控制台打印什么?
我会猜到
1 (firstTab)
2 (firstTabRectangle)
3 (secondTab)
但结果是:
3 (secondTab)
1 (firstTab)
2 (firstTabRectangle)
我知道“4”没有被创建,因为我们看到firstTab
“1”和firstTabRectangle
“2”。因此secondTabRectangle
,在我们想要切换到选项卡之前,永远不会创建“2”。
解决方案
推荐阅读
- ruby-on-rails - 如何在太阳黑子“search.results”中添加记录
- php - 克隆一个 phalcon 项目并在 Ubuntu 18.04 上安装 Phalcon
- angular - 单击时从角度组件实例化角度自定义指令
- jmeter - 在Jmeter中上传时如何更改文件名?
- python - 添加pytest的测试函数的局部变量,在pytest-csv中做一个单独的列
- javascript - 如何在javascript中将方法导入Worker Scope?
- r - 根据另一个参考表在数据框中的一列中插入值
- django - 使用for循环在django中动态访问表字段
- ios - 在 React Native 0.62 更新后找不到 -lBranch 的库
- algorithm - 将一棵二叉搜索树右转换为另一棵的时间复杂度