qml扩展插件的创建与使用(添加qml文档)

前言

笔者之前记录过如何使用qml模块

qml自定义Quick模块(使用qml源码)_꧁白杨树下꧂的博客-CSDN博客

在设计器中使用qml自定义Quick模块(使用qml源码)_꧁白杨树下꧂的博客-CSDN博客_qml设计器

笔者也没计划要再复制记录

本次记录是在上篇的基础进行的,算是一个结合的应用吧

一、添加qml资源文件

 笔者建议,直接将资源文件放在与qmldir同级目录中,以下是笔者的目录

二、添加qml文档

 目录可以自主决定,笔者是放在Qml目录中,添加了CustRect.qml

 qml文档的内容如下

import QtQuick 2.15

Rectangle {
    width: 100
    height: 100
    color: "red"
}

三、修改qmldir

module com.mycompany.qmlcomponents
plugin qmlplugintest
CustRect 1.0 Qml/CustRect.qml

 根据实际文件的位置,添加CustRect导出类型

四、修改main.cpp

import QtQuick 2.15
import QtQuick.Window 2.15
import com.mycompany.qmlcomponents 1.0

Window {
    id: window
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    MyItem {
        width: window.width
        height: window.height
    }

    CustRect {}
}

 只添加了一个CustRect类型的显示,运行结果如下

笔者使用的源码下载 

后记

正常来说,所有需要的资源文件、qmldir文件、插件文件都应该放在一个单独的.pri中,本次只是示例,所以未单独放入。

本次测试没做设计器的相关处理,所以设计器无法使用,但可以正常运行

笔者本以为,直接放在插件工程中,就可以直接编译到插件库中,但结果是工程未做处理,也许是笔者的方法不对吧


版权声明:本文为aggs1990原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。