#include <QVariant>
struct ItemInfo
{
ItemInfo *parent;
QVariant info;
QList<ItemInfo*> children;
ItemInfo() : parent(NULL), info() {}
};
struct CITY_INFO
{
QString name;
int PeopleNum;
double Area;
CITY_INFO():name(""),PeopleNum(0){}
};
Q_DECLARE_METATYPE(CITY_INFO )
Q_DECLARE_METATYPE(ItemInfo *)
Q_DECLARE_METATYPE(ItemInfo )
Q_DECLARE_METATYPE 注册成qt识别结构体,要包含#include <QVariant> 。注意当使用结构体指针时,也要注册,否则编译不过。如上
本文介绍如何在Qt中通过Q_DECLARE_METATYPE宏注册自定义结构体为元类型,以便在信号槽机制中使用。文章详细展示了ItemInfo和CITY_INFO两个结构体的注册过程,并强调了使用结构体指针时同样需要进行注册。

1373

被折叠的 条评论
为什么被折叠?



