子Qt设计师中集成自定义窗口部件
2013-01-12 12:37
330 查看
改进法(promotion):
通过选择一个类似的内置的Qt窗口部件
插件法(plugin):
iconeditorplugin.h
iconeditorplugin.cpp
iconeditorplugin.pro
通过选择一个类似的内置的Qt窗口部件
插件法(plugin):
iconeditorplugin.h
#ifndef ICONEDITORPLUGIN_H #define ICONEDITORPLUGIN_H #include <QDesignerCustomWidgetInterface> class IconEditorPlugin : public QObject, public QDesignerCustomWidgetInterface { Q_OBJECT Q_INTERFACES(QDesignerCustomWidgetInterface) //使用Q_INTERFACES()宏通知moc:: 这里的QDesignerCustomWidgetInterface是一个插件接口 public: IconEditorPlugin(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); }; #endif
iconeditorplugin.cpp
#include <QtPlugin> #include "../iconeditor/iconeditor.h" #include "iconeditorplugin.h" IconEditorPlugin::IconEditorPlugin(QObject *parent) : QObject(parent) { } QString IconEditorPlugin::name() const { return "IconEditor"; } QString IconEditorPlugin::includeFile() const { return "iconeditor.h"; } QString IconEditorPlugin::group() const { return tr("Image Manipulation Widgets"); } QIcon IconEditorPlugin::icon() const { return QIcon(":/images/iconeditor.png"); } QString IconEditorPlugin::toolTip() const { return tr("An icon editor widget"); } QString IconEditorPlugin::whatsThis() const { return tr("This widget is presented in Chapter 5 of <i>C++ GUI " "Programming with Qt 4</i> as an example of a custom Qt " "widget."); } bool IconEditorPlugin::isContainer() const { return false; } QWidget *IconEditorPlugin::createWidget(QWidget *parent) { return new IconEditor(parent); } Q_EXPORT_PLUGIN2(iconeditorplugin, IconEditorPlugin) //必须的,使Qt设计师中能够使用这个插件,第一参数是希望给插件的名字,第二个参数是实现该插件类的名字
iconeditorplugin.pro
TEMPLATE = lib CONFIG += designer plugin release HEADERS = ../iconeditor/iconeditor.h \ iconeditorplugin.h SOURCES = ../iconeditor/iconeditor.cpp \ iconeditorplugin.cpp RESOURCES = iconeditorplugin.qrc DESTDIR = $$[QT_INSTALL_PLUGINS]/designer //QT_INSTALL_PLUGINS保存了指向Qt安装目录种plugins目录所在的路径
相关文章推荐
- 在qt设计师中集成自定义窗口部件
- Qt自定义窗口部件
- Qt入门(19)——自定义窗口部件
- Qt自定义界面类并提升(提升的窗口部件)
- 自定义QT窗口部件外观之QStyle
- Qt学习之自定义窗口部件
- 自定义Qt窗口部件
- Qt学习之自定义窗口部件
- Qt自定义窗口部件
- Qt自定义窗口部件
- 自定义QT窗口部件外观
- 自定义QT窗口部件外观
- QT创建自定义窗口部件笔记
- QT程序中引入designer自定义窗口部件
- Qt自定义界面类并提升(提升的窗口部件),把OpenGL绘制的图形显示在QT的ui界面上
- Qt自定义窗口部件
- [Qt4] 自定义窗口部件
- 解决ubuntu-14-04中Qt设计师窗口部件工具箱中不能拖拽部件的方法
- 自定义QT窗口部件外观之QStyle
- Qt自定义界面类并提升(提升的窗口部件),把OpenGL绘制的图形显示在QT的ui界面上