我通过QListView显示了很多list。list数据存在QStandardItemModel里面。
选中某些项以后。我通过listView->selectionModel()->selectedIndexes()得到了选中的几项索引。
现在删除的时候,删除一项以后。行数发生了变化,导致错误该怎么解决。
比如 一共有5项。得到
QModelIndexList del=ui->listview->selectionModel()->selectedIndexes();
del 这个list里面要删除是第1项和第3项。
我删除了第1项。由于数据变动了。现在再删除第3项。结果删除的是原来的第4项了。
我看别人的做法是将得到的索引排序,然后从末尾向前面开始删除。
如果数据量比较大 不是还多了一个排序的过程吗?
有没有别的办法呢。比如删除前,不让这个list的数据更新。删除以后再更新