子目录

时间:2015-08-16 17:40:40

标签: qt qml qtquick2

我从子目录导入样式文件时遇到问题。

这是我的* .pro文件中的相关部分:

QML_IMPORT_PATH = \
src/gui/qml/views/startview/ \
src/gui/qml/views/createlocalgameview/ \
src/gui/qml/views/ \
src/gui/qml/components/styles/ \
src/gui/qml/components/ \
src/gui/qml/js/

例如我有一个文件MyTextFieldStyle.qml放在src / gui / qml / components / styles /:

TextFieldStyle {
    [...]
}

我有一个文件TextArea.qml放在src / gui / qml / components /:

Item {
    [...]
    TextField {
        id: textField
        style: MyTextFieldStyle {}
    }
    [...]
}

现在我收到了这个错误:

TextArea.qml: MyTextFieldStyle is not a type

如果我把MyTextFieldStyle.qml放在像TextArea.qml(src / gui / qml / components /)这样的目录中,它可以正常工作。但我有很多组件和很多样式,所以我想分开它们以获得更好的概述。有什么方法可以使这个工作吗?

1 个答案:

答案 0 :(得分:1)

将文件顶部放在一个带有相对路径的import语句中就足够了。

在您的示例中,您可以使用import './styles'

如评论中所述,QML_IMPORT_PATH并非旨在解决该问题。