qmake 的 QtQuick.Studio.Components 模块

问题描述 投票:0回答:1

我正在尝试为 qmake 导入

QtQuick.Studio.Controls

无论我尝试什么,我都会收到此错误:

QQmlApplicationEngine failed to load component
module "QtQuick.Studio.Controls" is not installed

我通过

Qt Quick-Application (compat)
创建项目,并希望与设计师工作室和 QtCreator 一起使用它。

研究了两天,还是没有想出如何解决这个问题。我在文档中也找不到任何内容。

当我使用 DesignerStudio(带有 cmake)或 QtCreator(不是 compat 和 cmake)创建项目时,一切都适合导入,并且可以正常工作,没有任何问题。 不过,我正在寻找 qmake 的解决方案。

有谁知道解决这个问题的方法吗?

我已经尝试了所有包含的内容(并将它们留在 .pro 中以进行概述)

.pro

QT += quick quickcontrols2 qml uitools widgets gui core

SOURCES += \
        main.cpp

resources.files = main.qml 
resources.prefix = /$${TARGET}
RESOURCES += resources

# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH =

# Additional import path used to resolve QML modules just for Qt Quick Designer
QML_DESIGNER_IMPORT_PATH =

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

main.cpp

#include <QGuiApplication>
#include <QQmlApplicationEngine>


int main(int argc, char *argv[])
{
    QGuiApplication app(argc, argv);

    QQmlApplicationEngine engine;
    const QUrl url(QStringLiteral("qrc:/ProteinTracker/main.qml"));
    QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
                     &app, [url](QObject *obj, const QUrl &objUrl) {
        if (!obj && url == objUrl)
            QCoreApplication::exit(-1);
    }, Qt::QueuedConnection);
    engine.load(url);

    return app.exec();
}

main.qml

import QtQuick 6.5
import QtQuick.Studio.Controls

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")
    ArcItem {
        id: arcItem
        width: 100
        height: 100
        fillColor: "#00000000"
    }

}

在文档中搜索。 询问 ChatGPT

c++ qt qml qt-quick
1个回答
0
投票

QtQuick.Studio.Components
不是正常 Qt 安装的一部分。这些组件随 Qt Design Studio 使用的套件一起提供。 QtDS 基本上带有自己的 Qt 以及预先打包的组件。这就是为什么使用提供的套件从 QtDS 内部导入时不会出现任何错误。

如果您想在自定义 Qt 或从维护工具安装的 Qt 中使用

QtQuick.Studio.Components
,您需要通过编译以下存储库、构建并安装它来将
QtQuick.Studio.Components
添加到该 Qt。

https://github.com/qt-labs/qtquickdesigner-components

您可以在 README.md 中找到说明。

mkdir qtquickdesigner-components-build
cd qtquickdesigner-components-build/
cmake -GNinja -DCMAKE_INSTALL_PREFIX=~user/Qt/6.5.4/gcc_64/ ../qtquickdesigner-components
cmake --build .
cmake --install .
© www.soinside.com 2019 - 2024. All rights reserved.