QML警告的含义

QML警告的含义,qml,qt5,Qml,Qt5,在我的应用程序中,我用QML编写了一个非常简单的UI,使用qt5.5.1在osx El-Capitan上编写。我有一个带有选项卡的布局,当我从一个选项卡切换到另一个选项卡时,这些选项卡加载了加载程序组件 启动时,tab1加载,它正确地填充了数据,并且没有收到任何警告。如果我导致tab1重新加载,例如切换到tab2,设置我的加载程序的源代码,然后返回到tab1,我会收到以下警告 警告:AbstractCheckable_QMLTYPE_13 QVariant(无效)QRect(0,0 0x0) 警

在我的应用程序中,我用
QML
编写了一个非常简单的UI,使用
qt5.5.1
osx El-Capitan
上编写。我有一个带有选项卡的布局,当我从一个选项卡切换到另一个选项卡时,这些选项卡加载了
加载程序
组件

启动时,
tab1
加载,它正确地填充了数据,并且没有收到任何警告。如果我导致
tab1
重新加载,例如切换到
tab2
,设置我的
加载程序的
源代码,然后返回到
tab1
,我会收到以下警告

警告:AbstractCheckable_QMLTYPE_13 QVariant(无效)QRect(0,0 0x0)

警告:QQuickText QVariant(无效)QRect(1820850 0x0)

警告:复选框_QMLTYPE_15 QVariant(无效)QRect(1820850 0x0)

警告:QQuickText QVariant(无效)QRect(1820850 0x0)

此问题不仅限于
tab1
。当我切换到
tab2
时,我会收到类似类型的警告。如果我用
tab2
而不是
tab1
启动我的应用程序,我在启动时不会收到
tab2
的警告,因此这似乎是仅在首次加载时重新加载我的
加载程序的
源代码时生成的警告

我还没有找到任何关于破译这些警告含义的文档。我已经尝试过对我的
QML
进行各种修复,但它第一次加载时没有警告,这一事实让我相信问题可能出在其他地方

===

更新后,我提供了一个合理的最小实现来说明这个问题

Main.qml
具有加载
Tab1.qml
Tab2.qml
Loader
组件,具体取决于选中的
单选按钮

使用
qmlscene
,我在启动时没有收到任何警告。但在选项卡之间切换后,我会看到以下警告:

QQuickText QVariant(无效)QRect(735370 0x0)

QQuickText QVariant(无效)QRect(735370 0x0)


更新了示例代码。感谢提供示例。我已经在El Capitain机器和Win机器上测试了代码。实际上,我使用了一个
qqmlaplicationengine
,而不是
qmlscene
,一切都很好。我没有错,但我想这是我们在这里看到的
qmlscene
中的一个bug。可能地不过,我不认为您在实际应用程序中使用了
qmlscene
。不,我在实际应用程序中没有使用
qmlscene
。正如我最初所说,我认为问题不在于
qml
代码,毕竟它加载正确。我想它在别处,因此我真正想知道的是,警告的意思是什么。该消息仅表示
QRect
无效。这是在尝试获取
QAccessibleQuickItem
状态时发生的。不幸的是,我没有找到解决这个问题的方法。