首页 文章

QtCreator Designer如何在QML类型中查看自定义对象?

提问于
浏览
2

我是QtCreator的新手,我的问题是我无法看到QML Custom Components .

例如,如果您导入QtQuick.Controls 1.5,您会在QML类型下看到: - Qt Quick - Controls .

到目前为止,我已经创建了我的个人组件集,这里是文件夹结构:

qrc folder setup
组件qmldir以这种方式完成:

# qmldir
module components
Header 1.0 Header.qml
Footer 1.0 Footer.qml
CentralPage 1.0 CentralPage.qml
GenericButton 1.0 GenericButton.qml
ProgressBarCustom 1.0 ProgressBarCustom.qml

而不是例如在LandingPageFrom.ui.qml中

import QtQuick 2.6
import QtQuick.Controls 1.5
import QtQuick.Layouts 1.3

import components 1.0 as Components

Components.CentralPage {
    pageName: "landingPage"

    id: landingPage

    width: 800
    height: 1056
    property alias aButton: aButton

    Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
}

并且正在编译并显示正常但在Designer内部没有任何显示为预期,我只看到位于同一目录但不在components目录中的.qml:

As you can see I can't see GenericButton or Footer, etc

这是我在.pro和main.cpp中所做的

QML_IMPORT_PATH += $$PWD/resources/common/ui
QML_DESIGNER_IMPORT_PATH += resources/common/ui

main.cpp中

QQmlApplicationEngine engine;
engine.addImportPath("qrc:///ui");
engine.load(QUrl("qrc:///ui/main.qml"));

奇怪的是,只有设计师无法看到组件,但QML代码能够,我在这里缺少什么?

1 回答

相关问题