我有一个带有元素baseItem的QTreeView,它本身包含一些子节点:
baseItem
- child1
- child2
- child3
现在我要删除此项目的所有子项,但不删除项目本身。我目前的做法是致电
if (baseItem->hasChildren())
baseItem->removeRows(rowCnt,baseItem->rowCount());
...其中rowCnt是baseItem所在的行索引号。不幸的是,只有当baseItem位于rowCnt = 0时才会起作用。这可能有什么问题?我怎么能删除baseItem的所有子节点?
谢谢!
答案 0 :(得分:1)
...其中rowCnt是baseItem所在的行索引号。
不,rowCnt是父树下子树中的索引。 所以:
if (baseItem->hasChildren())
baseItem->removeRows(0,baseItem->rowCount());