【发布时间】:2013-07-03 10:02:52
【问题描述】:
我正在开发一个项目,其中所有 .js 和 .qml 文件都存储在 Qt 资源文件 (.qrc) 中。我试图在 qml 文件中导入外部目录。外部目录包含用于不同目的的其他 .qml 文件。我不想将这些外部目录包含到 .qrc 文件中。
当我添加导入路径时出现错误:
qrc:\example.qml : 找不到目录
有没有办法像这样包含外部文件或目录。
【问题讨论】:
-
为什么要在资源文件中存储cpp和qml文件?它不是为此目的而设计的。
-
您始终可以使用不以“qrc:”或“:”为前缀的完整路径。但如前所述,是什么让您将 cpp 和 qml 文件存储到此应用程序的资源中?这些在运行时不需要。
-
嗨梅林和塞巴斯蒂安,这是我的问题中的一个错误。我已经纠正了。但是关于 qml,我认为使用 qrc 是最有效的方法,因为 qrc 会在程序执行期间将所有 qml 文件保存在其中。
-
请您显示一些代码来说明您如何访问 qrc 中的文件以及 qrc 文件的文本?
-
嗨,我使用这一行“import "file:/../qml" as QmlDirectory" 来导入一个名为 "qml" 的目录,之后我调用 QmlDirectory.Palette {} 来显示 Palette .qml 文件存储在“qml”目录中。这些行是在另一个“main.qml”文件中完成的,该文件存储在 qrc 文件中。