我创建了一个Qt应用程序,然后向它添加了一个名为"main.qml“的qml。我的文件是dialog.cpp,dialog.h,dialog.ui,main.cpp,截至9.pro,main.qml in qml.qrc
main.cpp
#include "dialog.h"
#include <QApplication>
#include <QQmlApplicationEngine>
#include<QtQml>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Dialog w;
// w.show();
QQmlApplicationEngine engine;
// engine.load(QUrl(QStringLiteral("qrc://main.qml")));
engine.load(QUrl::fromLocalFile("qrc:///main.qml"));
return a.exec();
}我写了QT += qml quick widgets,直到9.pro。
我没有修改其他代码,这是怎么回事?这是我的第一个问题,在堆叠溢出,我试图明确我的问题。
发布于 2015-04-21 03:31:39
QUrl::fromLocalFile将构建一个基于url的本地文件。因此,只需删除代码中的“qrc://”即可。必要时将main.qml复制到生成目标目录中。
样本代码:
engine.load(QUrl::fromLocalFile("main.qml"));https://stackoverflow.com/questions/29762049
复制相似问题