QVariant实质就是一个union的用法封装。作为统一参数使用。
QVariant的type和构造都可在qvariant.h中直接查看。基本数据类型都有封装就不解释了。
下面记录下自定义数据用法:
自定义类:
#include <QtCore>
class CMyTest
{
int a{ 0 };
float b{ 0.0f };
};
Q_DECLARE_METATYPE(CMyTest *)
数据保存至QT控件
void userfunction()
{
CMyTest * ptest = new CMyTest;
QVariant variant;
variant.setValue<CMyTest *>(ptest);
QTreeWidgetItem * pItem = new QTreeWidgetItem(m_pParentItem);
pItem->set