【发布时间】:2011-11-16 04:06:02
【问题描述】:
我正在基于 QAbstractItemModel 实现我的模型,并将它与 QTreeView 一起使用来显示分层数据。数据存储在 sqlite 表中。
我的问题是添加子节点时应该如何调用 beginInsertRows。 假设我有一些父节点,它包含 10 个子节点。我想添加新的子节点(最后)。
我是这样做的:
beginInsertRows(parentIndex, currentNodesCount, currentNodesCount);
// actual inserting
endInsertRows()
currentNodesCount 包含值 10,它是此子节点中的行数。 新节点将放置在第 11 位(从 0 开始计数的第 10 位)。
这个逻辑正确吗?
感谢您的帮助。
我也想知道如何使用 beginRemoveRows。
这是否正确:
beginRemoveRows(parentIndex, currentRow, currentRow);
// delete record
endRemoveRows();
currentRow 包含从 0 开始计数的已移除节点列表中的位置。
【问题讨论】:
标签: qt qt4 qtreeview qabstractitemmodel