在学习自定义QT窗口部件的时候,编译程序成功生成了【iconeditorplugin.dll】和【libiconeditorplugin.a】文件到 $(QTDIR)/plugins/designer
可是在QT设计师里 没有出现自定义的插件【IconEditor】 为何呢 是书附带的源代码
重启QT也不出现自己的插件 难道还要别的方法导入吗?请帮忙~~
主要部分文件如下:
【iconeditorplugin.h】
#include <QColor>
#include <QImage>
#include <QWidget>
class IconEditor : public QWidget
{
Q_OBJECT
Q_PROPERTY(QColor penColor READ penColor WRITE setPenColor)
Q_PROPERTY(QImage iconImage READ iconImage WRITE setIconImage)
Q_PROPERTY(int zoomFactor READ zoomFactor WRITE setZoomFactor)
public:
IconEditor(QWidget *parent = 0);
void setPenColor(const QColor &newColor);
QColor penColor() const { return curColor; }
void setZoomFactor(int newZoom);
int zoomFactor() const { return zoom; }
void setIconImage(const QImage &newImage);
QImage iconImage() const { return image; }
QSize sizeHint() const;
protected:
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
void paintEvent(QPaintEvent *event);
private:
void setImagePixel(const QPoint &pos, bool opaque);
QRect pixelRect(int i, int j) const;
QColor curColor;
QImage image;
int zoom;
};
【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)
【iconeditorplugin.pro】
TEMPLATE = lib
CONFIG += designer \
plugin \
release
HEADERS = ../iconeditor/iconeditor.h \
iconeditorplugin.h
SOURCES = ../iconeditor/iconeditor.cpp \
iconeditorplugin.cpp
RESOURCES = iconeditorplugin.qrc
DESTDIR = $(QTDIR)/plugins/designer
FORMS +=