Qt QML从子目录导入样式文件
我在从子目录导入样式文件时遇到问题 这是my*.pro文件中的相关部分:Qt QML从子目录导入样式文件,qt,qml,qtquick2,Qt,Qml,Qtquick2,我在从子目录导入样式文件时遇到问题 这是my*.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/ 例如,我在src/gui/qml/compone
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/
例如,我在src/gui/qml/components/styles/中放置了一个文件MyTextFieldStyle.qml:
TextFieldStyle {
[...]
}
我在src/gui/qml/components/中有一个文件TextArea.qml:
Item {
[...]
TextField {
id: textField
style: MyTextFieldStyle {}
}
[...]
}
现在我得到了这个错误:
TextArea.qml: MyTextFieldStyle is not a type
如果我将MyTextFieldStyle.qml放在与TextArea.qml(src/gui/qml/components/)相同的目录中,它就可以正常工作。但是我有很多组件和很多样式,所以我想把它们分开,以便有一个更好的概述。有什么办法可以让它工作吗?在文件顶部放一个带有相对路径的
import
语句就足够了
在您的示例中,可以使用import./styles'
正如注释中所述,
QML\u IMPORT\u PATH
并不是为了解决这个问题。在文件顶部放一个带有相对路径的IMPORT
语句就足够了。在您的示例中,可以使用import./styles'
。让我知道它是否有效,我可以创建一个响应,以便您在将来的搜索中接受它。注意:此QML\u导入\u路径*rap不会影响任何内容,但可能是创建者高亮显示(惊喜!):0是的,您是对的。非常感谢你。请创建一个我可以接受的答案!为了使您的QML_导入路径工作,您应该在目录样式中创建一个qmldir文件,在其中编写模块样式MyTextFieldStyle 1.0 MyTextFieldStyle.QML,在QML中导入样式1.0,我认为这比自己导入文件夹要好