#include "HtDynamicTreeWidgetItemBase.h"
class QComboBox;
class QTreeWidgetItem;
class HtDynamicComboBox:public HtDynamicTreeWidgetItemBase
{
Q_OBJECT
public:
HtDynamicComboBox(const QString& mtext = "");
~HtDynamicComboBox();
virtual void setItemData(dtDAL::ActorProxy* actorptr);
virtual void setItemData(dtDAL::ActorProxy* actorptr,const std::string& tag = ACTORPROXY_PROPERYT_TEXTURE);
virtual void setLabelTextList(
QStringList mtext);
protected:
virtual void initializationUi();
QComboBox* mcomboBoxL;
QTreeWidgetItem * mlabelL;
std::string _tag;
int _Index;
private slots:
void slotValueChanged(int);
};
上面是我写的一个类,
编译的时候报错如下:
错误 2 error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall HtDynamicComboBox::metaObject(void)const " (
?metaObject@HtDynamicComboBox@@UBEPBUQMetaObject@@XZ) htdynamiccomboboxwidget.obj HTSDPublicGui
错误 3 error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall HtDynamicComboBox::qt_metacast(char const *)" (
?qt_metacast@HtDynamicComboBox@@UAEPAXPBD@Z) htdynamiccomboboxwidget.obj HTSDPublicGui
错误 4 error LNK2001: 无法解析的外部符号 "public: virtual int __thiscall HtDynamicComboBox::qt_metacall(enum QMetaObject::Call,int,void * *)" (
?qt_metacall@HtDynamicComboBox@@UAEHW4Call@QMetaObject@@HPAPAX@Z) htdynamiccomboboxwidget.obj HTSDPublicGui
错误 5 error LNK2001: 无法解析的外部符号 "public: static struct QMetaObject const HtDynamicComboBox::staticMetaObject" (
?staticMetaObject@HtDynamicComboBox@@2UQMetaObject@@B) htdynamiccomboboxwidget.obj HTSDPublicGui
错误 6 fatal error LNK1120: 4 个无法解析的外部命令 D:\1111\bin\Debug\HTSDPublicGuid.dll HTSDPublicGui
如果将QObject注释掉,就
没有问题了,但这样无法实现信号响应,我查了一下根本就没有生成该文件对应的
moc文件,这是怎么回事啊?该如何解决啊?