Qt Quick 2 Extension Plugin 扩展插件

一.扩展插件的使用

在我们使用Qml的时候都会看到类似下面的语句

import QtQuick 2.2
import QtQuick.Window 2.2
import QtQuick.Controls 1.2
 

通过上面的import语句,我们就可以使用qml中对应的控件了

模块的导入语句import + 模块名称 + 版本号

Qt本身自带很多已经封装好的 扩展插件。本文的主要目的是介绍开发基本的扩展插件

二.扩展插件的创建

1. 创建子项目目录

2.创建子项目

以上都是系统自定义的创建方式,只要一步一步跟着操作下去就可以了。

3.开始创建 扩展插件

Name:  是生成的扩展插件所在的目录名称,这里我们将名称设置为Plugin,与下面的保持一致

4.新增自己扩展的qml插件

如上面两个图片所示,新增了两个插件.

5.编译,这个不用解释。  经过编译之后会生成一个动态库。按照上图的配置会生成一个libPlugin.so动态库(linux)。如果实在windows会生成一个.dll文件。 

三.使用外部插件

1.main.qml文件中新增如下代码

2.在子项目的.pro文件中添加QML_IMPORT_PATH = $$PWD/../

这个路径是我们在创建扩展插件的时候添加的Name,所在的目录,也就是/home/ubuntu/workspace/test

这个环境变量的目的主要是为了解决在使用的时候出现的波浪线。

3.将之前生成的动态库拷贝到扩展插件所在的目录,这里是/home/ubuntu/workspace/test/Plugin下面

4.添加环境变量QML2_IMPORT_PATH之后就可以正确运行

添加方式有很多。

  1> QQmlApplicationEngine::addImportPath添加

  2>系统环境变量添加 export QML2_IMPORT_PATH=/home/ubuntu/workspace/test 田间

  3> QtCrreator项目中添加

4. 其他的不再一一列举
四.对于扩展插件的相关疑问

1.MyPlugin文件中的Name.qmltypes文件是什么.

答:这个是插件信息文件,可以让Qt Creator争取读取typeinfo信息并且进行补全.

这个是.qmltypes文件生成命令

qmlplugindump -nonrelocatable MyPlugin 1.0 /import/path > /import/path/my/module/plugins.qmltypes

2.MyStyle.qmlc文件是什么文件

答:这个文件大家不用去管,就是增加编译器编译速度的.

猜你喜欢

转载自blog.csdn.net/qq_15024587/article/details/79581893