qq层次结构与qrc

SGb*_*Gbo 6 c++ qml

我正在编写一个c ++/qml应用程序.由于我有很多qml文件,我想创建一个目录结构.我已经在我的文件系统中实现了这样的结构:

project
    |- qml
        |- main.qml
        |- widgets
            |- Button.qml
            |- Label.qml
Run Code Online (Sandbox Code Playgroud)

我现在想要做的是使用qrc-prefixes来创建完全相同的层次结构:

main.qrc
    /
        main.qml
    /widgets
        Button.qml
        Label.qml
Run Code Online (Sandbox Code Playgroud)

这是我的qml文件示例:

import QtQuick 2.2

import "widgets"

Item {
    id: window
    width: 800
    height: 480

    Button {
        id: button
        anchors.centerIn parent
        text: "click me"
    }
}
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,编译器不知道Button!

编辑:

错误消息:qrc:///qml/main.qml:4"小部件":没有这样的目录

Kim*_*ing 6

QML解释器尝试将您的目录加载到错误的位置(文件系统而不是qrc文件).尝试

import "qrc:/widgets"
Run Code Online (Sandbox Code Playgroud)

解决你的问题.