将自定义的widget放到Qt Designer中

本文介绍如何创建并实现一个自定义的PushButton组件,该组件作为Qt Designer中的一个插件。详细展示了PushButtonPlugin类的实现过程,包括继承自QDesignerCustomWidgetInterface接口,以及实现必要的方法如name(), createWidget()等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版权声明

请尊重原创作品。转载请保持文章完整性,并以超链接形式注明原始作者“tingsking18”和主站点地址,方便其他朋友提问和指正。

上篇文章写的PushButton放到Qt Designer中:

PushButtonplugin.h

#include <QDesignerCustomWidgetInterface> class PushButtonPlugin:public QObject, public QDesignerCustomWidgetInterface { Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) public: PushButtonPlugin(QObject *parent = 0); QString name() const; QString includeFile() const; QString group() const; QIcon icon() const; QString toolTip() const; QString whatsThis() const; bool isContainer() const; QWidget* createWidget(QWidget *parent); };

PushButtonplugin.cpp

#include "PushButtonplugin.h" #include "PushButton.h" #include <QtPlugin> PushButtonPlugin::PushButtonPlugin(QObject *parent) : QObject(parent) { } QString PushButtonPlugin::name() const { return "PushButton"; } QString PushButtonPlugin::includeFile() const { return "PushButton.h"; } QString PushButtonPlugin::group() const { return tr("Buttons"); } QIcon PushButtonPlugin::icon() const { return QIcon(":/images/bp_btn3.png"); } QString PushButtonPlugin::toolTip() const { return tr("An PushButton widget"); } QString PushButtonPlugin::whatsThis() const { return tr("This widget is PushButton widget"); } bool PushButtonPlugin::isContainer() const { return false; } QWidget* PushButtonPlugin::createWidget(QWidget *parent) { return new PushButton("PushButton",parent); } Q_EXPORT_PLUGIN2(PushButtonplugin, PushButtonPlugin)

PushButtonplugin.pro

QT += qt3support
TEMPLATE = lib
CONFIG += designer plugin release
HEADERS = mPushButton.h \
mPushButtonplugin.h
SOURCES = mPushButtonplugin.cpp
RESOURCES = clicklabel.qrc
DESTDIR = $(QTDIR)/plugins/designer

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值