• 3650阅读
  • 0回复

[提问]QStandardItemModel如何一次删除指定的索引行? [复制链接]

上一主题 下一主题
离线iamhuskar
 

只看楼主 倒序阅读 楼主  发表于: 2016-05-16
我通过QListView显示了很多list。list数据存在QStandardItemModel里面。

选中某些项以后。我通过listView->selectionModel()->selectedIndexes()得到了选中的几项索引。

现在删除的时候,删除一项以后。行数发生了变化,导致错误该怎么解决。

比如 一共有5项。得到
QModelIndexList del=ui->listview->selectionModel()->selectedIndexes();
del  这个list里面要删除是第1项和第3项。
我删除了第1项。由于数据变动了。现在再删除第3项。结果删除的是原来的第4项了。
我看别人的做法是将得到的索引排序,然后从末尾向前面开始删除。
如果数据量比较大 不是还多了一个排序的过程吗?
没有别的办法呢。比如删除前,不让这个list的数据更新。删除以后再更新




快速回复
限100 字节
 
上一个 下一个