我正在编写一个c ++ / qml应用程序。由于我有很多qml文件,我想创建一个目录结构。我已经在我的文件系统中实现了这样的结构:
project
|- qml
|- main.qml
|- widgets
|- Button.qml
|- Label.qml
我现在想要做的是使用qrc-prefixes来创建完全相同的层次结构:
main.qrc
/
main.qml
/widgets
Button.qml
Label.qml
这是我的qml文件示例:
import QtQuick 2.2
import "widgets"
Item {
id: window
width: 800
height: 480
Button {
id: button
anchors.centerIn parent
text: "click me"
}
}
我遇到的问题是编译器不知道Button!
编辑:
错误讯息: qrc:///qml/main.qml:4“小部件”:没有这样的目录
答案 0 :(得分:6)
QML解释器尝试将您的目录加载到错误的位置(文件系统而不是qrc文件)。 试试
import "qrc:/widgets"
解决您的问题。
答案 1 :(得分:1)
确保将目录添加到qrc文件中。最简单的方法是右键单击QtCreator中的“qml.qrc”文件,然后选择“添加现有目录”。在该提示之后还应该帮助QML解释器找到您的文件。