由于某些原因,我必须在 SLES 11 SP3 下使用 Qt3。我写了以下插件:
// PixmapButtonPlugin.hpp
#include <qwidgetplugin.h>
class PixmapButtonPlugin : public QWidgetPlugin
{
public:
QStringList keys () const;
QWidget* create (const QString& key, QWidget* parent = 0, const char* name = 0);
QString group (const QString& key) const;
QIconSet iconSet (const QString& key) const;
QString includeFile (const QString& key) const;
QString toolTip (const QString& key) const;
QString whatsThis (const QString& key) const;
bool isContainer (const QString& key) const;
};
Q_EXPORT_PLUGIN(PixmapButtonPlugin)
// PixmapButtonPlugin.cpp
#include "PixmapButtonPlugin.hpp"
#include "PixmapButton.qh"
QStringList PixmapButtonPlugin::keys () const
{
return QStringList() << "PixmapButton";
}
QWidget* PixmapButtonPlugin::create (const QString&, QWidget* parent, const char*)
{
return new PixmapButton(parent);
}
QString PixmapButtonPlugin::group (const QString&) const
{
return "Buttons";
}
QIconSet PixmapButtonPlugin::iconSet (const QString& key) const
{
return QWidgetPlugin::iconSet(key);
}
QString PixmapButtonPlugin::includeFile (const QString&) const
{
return "PixmapButton.qh";
}
QString PixmapButtonPlugin::toolTip (const QString&) const
{
return "Pixmap button";
}
QString PixmapButtonPlugin::whatsThis (const QString&) const
{
return "Button that takes the shape of its pixmap";
}
bool PixmapButtonPlugin::isContainer (const QString&) const
{
return false;
}
我终于把编译好的共享库libplugins.so复制到了文件夹里
/usr/lib/qt3/plugins/designer
设计师没有在任何地方显示插件,也没有告诉我它也无法创建相应的小部件。我绝对没有错误。
我应该怎么办?