在我的应用程序中,我使用QML
上Qt 5.5.1
使用OS X El Capitan
编写了一个非常简单的用户界面。我有一个带有选项卡的布局,当我从选项卡切换到选项卡时,这些选项卡加载了Loader
组件。
在启动时,tab1
加载,它正确填充了数据,我没有收到任何警告。如果我重新加载tab1
,例如切换到tab2
,source
设置我的Loader
然后回tab1
,我就会以下警告。
警告:AbstractCheckable_QMLTYPE_13 QVariant(无效)QRect(0,0 0x0)
警告:QQuickText QVariant(无效)QRect(1820,850 0x0)
警告:CheckBox_QMLTYPE_15 QVariant(无效)QRect(1820,850 0x0)
警告:QQuickText QVariant(无效)QRect(1820,850 0x0)
此问题并不仅限于tab1
。当我切换到tab2
时,我会收到类似类型的警告。如果我通过tab2
代替tab1
破解我的应用程序,我在启动时没有收到tab2
的警告,所以这似乎只是在重新加载{{1}时生成的警告我的source
没有首次加载。
我还没有找到任何关于破译这些警告含义的文件。我已尝试对Loader
进行各种修复,但事实上它第一次没有警告就加载,这让我相信问题可能在其他地方。
===
更新,我提供了一个相当简单的实现来说明此问题here。
QML
包含加载Main.qml
或Loader
的{{1}}组件,具体取决于检查的Tab1.qml
。
使用Tab2.qml
,我在启动时没有收到任何警告。但是一旦我在标签之间切换,我会看到以下警告:
QQuickText QVariant(无效)QRect(735,370 0x0)
QQuickText QVariant(无效)QRect(735,370 0x0)