我尝试创建一个使用 rcc 模块的应用程序,但出现错误“未安装模块”。
我有以下文件夹和文件:
MainFolder
|_Folder1
|_Folder11
|_qmldir
|_MyButton.qml
|_Folder2
|_qmldir
|_MyComponent.qml
Application
|_application.pro
|_main.cpp
|_main.qml
|_rccFolders
|_folder11.rcc
|_folder2.rcc
我的 qmldirs 包含:
在文件夹 11 中:
module MainFolder.Folder1.Folder11
MyButton 1.0 MyButton.qml
在文件夹 2 中:
module MainFolder.Folder2
MyComponent 1.0 MyComponent.qml
主.cpp:
#include ...
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QString sourcePath="C:/path_to_rcc_files/";
QQmlApplicationEngine engine;
QResource::registerResource(sourcePath+"folder11.rcc");
QResource::registerResource(sourcePath+"folder2.rcc");
engine.addImportPath(":/"); //to use .rcc files
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
}
main.qml:
//QML imports
import MainFolder.Folder1.Folder11
import MainFolder.Folder2
ApplicationWindow
{
...
}
但是当我执行应用程序时,我得到:
qrc:/main.qml:... module "MainFolder.Folder1.Folder11" is not installed
qrc:/main.qml:... module "MainFolder.Folder2" is not installed
我的代码有什么问题?谢谢。