qt下生成自定义控件

1.创建自定义控件类
qt下生成自定义控件_第1张图片

2.根据向导提示,建立一个新类,取名“Test"(注:首字母大写,不能全小写,不然后面会出错),一直点击”下一点“,完成工程创建。
qt下生成自定义控件_第2张图片

3.然后创建完成
qt下生成自定义控件_第3张图片

4.然后修改mycustom.h中的内容,在头文件中包含#include 这个库,然后在类名前加入QDESIGNER_WIDGET_EXPORT宏

qt下生成自定义控件_第4张图片

5.修改.cpp文件中内容,为了看使用的效果
qt下生成自定义控件_第5张图片

注意:此处编码格式保存为System,否则可能出现导致编译不给不过的问题

qt下生成自定义控件_第6张图片

6.使用MSVC201732bit下的Release环境编译,这个时候就在Release目录下生成了.dll库和.lib库
qt下生成自定义控件_第7张图片

7.然后将mycustomplugin.dll,mycustomplugin.lib两个库文件放到E:\QT\5.14.2\msvc2017\plugins\designer目录下

qt下生成自定义控件_第8张图片

然后运行designer.exe这个,发现在ui界面中生成了自定义控件
qt下生成自定义控件_第9张图片

按照上述位置拷贝,只能单独运行designer.exe时才能看到自定义控件,在Qt Creator中的设计师里面并没有看到该控件,此时,需要将mycustomplugin.dll文件拷贝到

E:\QT\Tools\QtCreator\bin\plugins\designer目录下

此时新建一个qt工程,发现ui中有了生成的自定义的控件
qt下生成自定义控件_第10张图片

二、部署插件

1.如果想在QtCreator下使用,就需要编译成MinGw 32bit下的Debug模式下使用,编译的mycustomplugind.dll和mycustomplugind.lib库存放到E:\QT\5.14.2\mingw73_32\plugins\designer目录下。

将mycustomplugind.dll库存放到E:\QT\Tools\QtCreator\bin\plugins\designer

然后在新建的工程目录下,创建include和lib两个文件夹,将mycustom.h放到include目录下,将mycustomplugind.lib放到lib目录下
qt下生成自定义控件_第11张图片

2.然后在.pro文件中添加内容如下

qt下生成自定义控件_第12张图片

注意:最后将mycustomplugind.dll动态库放到该工程的debug下
qt下生成自定义控件_第13张图片

最终的实现效果如下:qt下生成自定义控件_第14张图片

你可能感兴趣的:(qt,ui,开发语言)