我有办法打印出QstandardItem的数据吗?

QList<QStandardItem*> testQList;
QString yay = "!Yay";
QStandardItem *item = new QStandardItem(yay);
testQList.append(item);

qDebug() << testQList;

我只是得到内存地址,(0x409bd00)我也无法取消引用列表。

最佳答案

之所以会这样,是因为您尝试打印带有对象的整个列表,而不是带有字符串的列表。在这种情况下,qDebug总是打印内存地址,因此您应该使用循环和text()方法(迭代抛出列表)。

for(int i = 0; i<testQList.size();i++)
{
   qDebug() << testQList.at(i)->text();
}

10-04 15:06