我正在使用QStandardItemModel
a QTreeView
,我希望左窗格显示节点,右窗格显示节点的值,在本例中为第 0 列和第 1 列。
节点的构建非常成功,但是当我尝试使用 将值放入该模型时 QStandardItem::insertRow(1, XX)
,该项目根本没有出现,我错过了什么吗?
@更新:
由于我递归地创建节点,我使用:
void Widget::addNode(QStandardItem *parent, const QVariant & data)
{
QStandardItem *childKey = ...; // left pane
QStandardItem *childValue = ...; // right pane
parent->appendRow (childKey);
}
我不能只使用model.setItem()
to append childValue
,因为它去了错误的 row ,并且 QTreeView 在添加新节点时默认不展开。