1、注册自定义结构体,如下:
#pragma once
struct Tt
{
QString name;
int id;
double t1;
double t2;
double t3;
double r1;
double r2;
double r3;
QString m1;
QString m2;
QString m3;
QString m4;
QString m5;
QString m6;
QString m7;
QString m8;
};
Q_DECLARE_METATYPE(Tt) //注册结构体
2、在节点中存储结构体数据,代码如下:
void Demo_2::SlotGetTt(Tt m_tt)
{
QTreeWidgetItem * li11 = new QTreeWidgetItem(QStringList() << m_tt.name);
li8->addChild(li11);
//写入数据
li11->setData(0, Qt::UserRole + 1, QVariant::fromValue(m_tt));
//读取数据
//Tt data = li11->data(0, Qt::UserRole + 1).value<Tt>();
//qDebug() << data.name << data.id;
}