QML不能分配给不存在的属性
问题描述:
我试图创建一个自定义的QML对象。我上手简单,通过一种名为rect.qml一个QML文件:QML不能分配给不存在的属性
import QtQuick 2.2
Rectangle
{ }
在同一目录中,我想用我的RECT对象在一个单独的QML文件,名为window.qml:
import QtQuick 2.2
Item {
id: mainWindow
rect
{ }
}
我知道非常高的水平。无论如何,当我尝试运行我的申请,我得到以下错误:
QRC:/qml/window.qml:3:13:无法分配给不存在的财产“矩形”
所以我检查了我的QRC文件,它会为这样的:
<RCC>
<qresource prefix="/qml">
<file>window.qml</file>
<file>rect.qml</file>
</qresource>
</RCC>
根据文档(http://doc.qt.io/qt-5/qtqml-documents-definetypes.html)这个应用程序是不是因为它是如此裸露的骨头,(简化我的问题)非常有用,但有不该” t是一个错误。
任何帮助将不胜感激!
答
您必须将文件重命名为Rect.qml
,并调用它Rect{}
答
QML强加给你如何命名的东西,QML文件或暴露的C++枚举密钥必须以大写字母开头,属性或ID必须没有一定的局限性以大写字母开头。我不记得这是记录在一个单一的,方便的文章,因为它应该。大多数都有记录,但它遍布整个地方。
+0
是的,名称是问题所在。我同意,对于特定于此语言的未明确列出的限制,这是令人沮丧的。感谢您的时间! – Eagle13559
您是否尝试将它重命名为Rect.qml,因此在window.qml中? – bipll
你们钉了它!感谢您的时间和反馈! – Eagle13559