【发布时间】:2013-12-31 08:02:06
【问题描述】:
我做了一个从本地文件系统加载 qml 的应用程序,它工作正常,但现在我试图将其更改为从 qml 加载,但它永远找不到我的文件。
我已经查看了网络并尝试了一些解决方案,但没有任何效果。
我的 qml 文件位于项目 qml/MyProject/main.qml 的子目录中
然后我创建了一个资源文件并添加了前缀“/”(也尝试了不同的名称),然后将我的 qml 文件添加到其中。
然后我把生成的qtquick2applicationviewer.cppsetMainQmlFile改成:http://pastebin.com/kRJDJACW
然后我尝试以下几行从资源中加载 qml:
viewer.setMainQmlFile("qrc:/main.qml");
viewer.setMainQmlFile("qrc://main.qml");
viewer.setMainQmlFile("qrc:/other_prefix/main.qml");
viewer.setMainQmlFile("qrc:/qml/MyProject/main.qml");
viewer.setMainQmlFile("qrc://qml/MyProject/main.qml");
我的资源文件:http://pastebin.com/1sjUqk2T
Qt 版本:5.2/QtCreator 3.0
我在做什么啊?
【问题讨论】:
-
您为什么使用应用程序查看器?不使用它可以工作吗?请出示您的项目文件。
-
您可以设置
QML_IMPORT_TRACE以获取更详细的加载信息。 -
@LaszloPapp 实际上我使用的是 QtCreator 生成的默认模板,当我要求创建一个快速应用程序时,这个查看器是什么意思?
-
已解决,谢谢各位。出于某种原因,我的资源文件在“其他文件”中,而不是在 Qt Creator 的“资源”区域中,所以我添加了一个新文件并且它有效。谢谢!
标签: c++ qt qt-creator qml qmake