如何创建自定义部件并添加到Qt Designer来爽快的拖动部件可视化界面设计?
Qt Designer基于插件的架构使得它可以使用用户设计或者第三方提供的自定义部件,就像使用标准的Qt部件一样。
自定义部件中的所有特性在Qt Designer中都是可用的,这包含了部件属性、信号和槽等。
下面通过例子来看一下在Qt Creator中创建Qt Designer自定义部件的过程。
1.创建项目,新建项目-->其他项目--> Qt4设计师自定义控件
项目名称为mydesignerplugin --> 控件类改为MyDesignerPlugin
修改类后右侧有各种信息,一般只需要选择icon(也可以不选择)
继续下一步,都保持默认就好了。
2.编写部件
编写 mydesignerplugin.h 和 mydesignerplugin. cpp
#include "mydesignerplugin.h"
#include <QPushButton>
#include <QHBoxLayout>
MyDesignerPlugin::MyDesignerPlugin(QWidget *parent) :
QWidget(parent)
{
QPushButton *button1 = new QPushButton(this);
QPushButton *button2 = new QPushButton(this);
button1->setText("hello");
button2->setText("Qt");
QHBoxLayout *layout = new QHBoxLayout(this);
layout->addWidget(button1);
layout->addWidget(button2);
setLayout(layout);
}
写完代码后进行编译(注意:需要是release版本才能在Qt Designer中使用)
3.在Qt Designer中使用插件
把上面生成的dll/so/dylib放到Qt安装目录的plugins目录下的designer目录中。
如win下,放到如下目录下:
C:\Qt\Qt5.12.4\5.12.4\mingw73_64\plugins\designer
打开你的Qt Designer 效果如下:
欢迎交流学习,共同进步
限本人水平有限,如有错误请指教,谢谢