參考:html
https://www.cnblogs.com/georgeOfChina/p/7773141.htmlui
一、打開QtCreator,這裏使用的是Qt5.10.1+MSVC2015_32位的環境。spa
新建項目,其餘項目->Qt4設計師自定義控件->設置類名Test【大寫開頭】,肯定,此時無ui文件設計
二、刪除Test.h和Test.cpp,右鍵工程添加Qt->Qt設計師界面類,選擇Widget模板,更名字爲Test,此時就有ui文件了code
三、代碼初始化htm
在Test.h中添加頭文件blog
#include <QtUiPlugin/QDesignerExportWidget>
在類名前面加上QDESIGNER_WIDGET_EXPORT宏get
四、打開ui文件,設計想要的界面編譯
這裏拖入3個checkbox,功能是1勾選上2,3也勾選,1不勾選2,3也不勾選模板
五、代碼實現
進入第一個checkbox的clik回調
void Test::on_checkBox_clicked() { if(ui->checkBox->isChecked()) { ui->checkBox_2->setChecked(true); ui->checkBox_3->setChecked(true); } else { ui->checkBox_2->setChecked(false); ui->checkBox_3->setChecked(false); } }
六、編譯,在對應的文件夾生成testplugin.dll和testplugin.lib
七、獲得最後的文件
testplugin.dll、
testplugin.lib、
test.h
如何使用呢?
一、把testplugin.dll放在Qt庫路徑和Creator路徑下
D:\Qt5.10.1\5.10.1\msvc2015\plugins\designer
D:\Qt5.10.1\Tools\QtCreator\bin\plugins\designer
二、使用對應版本Creator新建工程,能夠看見ui中有了Test控件
三、把這個控件拖到界面就ok了