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
的状态时发生的。不幸的是,我没有找到解决这个问题的方法。