QML 错误:qrc:/Main.qml:24 模块“系统”未安装

Posted

技术标签:

【中文标题】QML 错误:qrc:/Main.qml:24 模块“系统”未安装【英文标题】:QML error: qrc:/Main.qml:24 module "system" is not installed 【发布时间】:2016-09-13 14:16:03 【问题描述】:

我是 QML 新手,我有一个项目。 在我的一个目录中,我有 /imports/system/qmldir 文件,其中我有以下代码:

singleton System 1.0 System.qml
App 1.0 App.qml

在我的源文件中我有

import system 1.0

错误提示未安装模块系统。

qrc:/Main.qml:24 module "system" is not installed

能否请您告诉我安装模块的步骤或流程。

【问题讨论】:

相关 - ***.com/questions/35352930/…。您还可以发布确切的错误消息吗? qrc:/Main.qml:24 模块“系统”未安装 见forum.qt.io/topic/50037/…。他们在其中说 “您需要在 .pro 文件中将 QML_ROOT_PATH 设置为包含 QML 文件的目录的路径。默认值是您的项目目录,这就是当您将 qml 放在那里时它可以工作的原因。” Main.qml 是在您的项目根目录中,还是在子目录中? 我的 Main.qml 位于项目根目录中,与 .pro 文件处于同一级别。 【参考方案1】:

您必须调用QQmlEngine::addImportPath() 并将路径传递给/imports

int main(int argc, char *argv[])

    QGuiApplication app(argc, argv);

    QQmlApplicationEngine engine;
    engine.addImportPath("/path/to/imports"); // <==
    engine.load(...);

    return app.exec();

【讨论】:

以上是关于QML 错误:qrc:/Main.qml:24 模块“系统”未安装的主要内容,如果未能解决你的问题,请参考以下文章

QML 错误“未知组件。(M300)”但代码有效

Qml 文本元素语法错误

qml 函数的默认参数给出语法错误

Qml - 错误:未安装模块“QtMobility.location”

带有 Timer 的 Qml 函数工作错误

简单的 PyQt5 QML 应用程序导致分段错误