在运行时检索的QTreeWidgetItems数据中的Showig

时间:2015-12-25 21:32:53

标签: c++ qt runtime qtreewidget qtreewidgetitem

我希望在QTreeWidget中分层显示从数据库中提取的一些数据。 我认为这样做的一种方法是将数据转换为QTreeWidgetItem s。

但是这样,我必须在运行时创建对象(QTreeWidgetItem s)。这就是问题所在。我不知道该怎么做。

我该怎么做?或者有更好的方式来展示它吗?

我想要的例子: example

编辑:

将按层次检索和显示的数据是: 大学,地区,职业和每个人的总金额。

编辑2:

如果您需要,我会添加更多信息:

QTreeWidgetItem *itm = new QTreeWidgetItem(ui->treeWidget);
itm->setText(0, "University 1");
QTreeWidgetItem *itm2 = new QTreeWidgetItem(itm);
itm2->setText(0,"Area 1 ");

QTreeWidgetItem * itm3 = new QTreeWidgetItem(itm2);
itm3->setText(0,"Lawyer");

QTreeWidgetItem *itm4 = new QTreeWidgetItem(ui->treeWidget);
itm4->setText(0, "University 2");

QTreeWidgetItem *itm5 = new QTreeWidgetItem(itm4);
itm5->setText(0, "Area 2");

QTreeWidgetItem *itm6 = new QTreeWidgetItem(itm5);
itm6->setText(0, "Systems engineering");

上面的代码就像我想要但硬编码。我需要使用从DB检索的动态信息来执行此操作。我可以把记录带到记忆中,这不是问题。问题是如何在不同的QTreeWidgetItem中显示这些记录,因为"对象" (DB的记录)可以在不同的时间或多或少。

EDIT3 - 已解决:

我认为我必须动态创建对象。 我不知道我可以这样做:

for(int i = 0; i < 10; i++){
        QTreeWidgetItem *item   = new QTreeWidgetItem(ui->treeWidget);
        item->setText(0, QString::number(i));
}

0 个答案:

没有答案