QML无法分配给不存在的属性

时间:2017-04-05 20:44:27

标签: c++ qt qml qt5

我正在尝试创建自定义QML对象。我开始很简单,创建一个名为 rect.qml 的qml文件:

import QtQuick 2.2
Rectangle 
{ }

在同一目录中,我想在一个单独的qml文件中使用我的rect对象,名为 window.qml

import QtQuick 2.2
Item {
  id: mainWindow
  rect
  { }
}

我知道非常高质量的东西。无论如何,当我尝试运行我的应用程序时,我收到以下错误:

qrc:/qml/window.qml:3:13:无法分配给不存在的属性" rect"

所以我检查了我的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),这个应用程序并不是非常有用,因为它非常简单,(我的问题简化了),但不应该是一个错误

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:2)

您必须将文件重命名为Rect.qml并将其命名为Rect{}

答案 1 :(得分:1)

QML对如何命名,QML文档或公开的C ++枚举键必须以大写字母开头,并且属性或ID必须以大写字母开头。我不记得这应记录在一篇方便的文章中。大多数都有记录,但它遍布各处。

相关问题