1、打开QtCreator,这里使用的是Qt5.10.1+MSVC2015_32位的环境。
新建项目,其他项目->Qt4设计师自定义控件->设置类名Test【大写开头】,确定,此时无ui文件
2、删除Test.h和Test.cpp,右键工程添加Qt->Qt设计师界面类,选择Widget模板,改名字为Test,此时就有ui文件了
3、代码初始化
在Test.h中添加头文件
#include <QtUiPlugin/QDesignerExportWidget>
在类名前面加上QDESIGNER_WIDGET_EXPORT宏
4、打开ui文件,设计想要的界面
这里拖入3个checkbox,功能是1勾选上2,3也勾选,1不勾选2,3也不勾选
5、代码实现
进入第一个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);
}
}
6、编译,在对应的文件夹生成testplugin.dll和testplugin.lib
7、得到最后的文件
testplugin.dll、
testplugin.lib、
test.h
如何使用呢?
1、把testplugin.dll放在Qt库路径和Creator路径下
D:\Qt5.10.1\5.10.1\msvc2015\plugins\designer
D:\Qt5.10.1\Tools\QtCreator\bin\plugins\designer
2、使用对应版本Creator新建工程,可以看见ui中有了Test控件
3、把这个控件拖到界面就ok了
长风破浪会有时,直挂云帆济沧海!