Comment puis-je supprimer une liste d'éléments sélectionnés dans QListView dans QT 4.6. Quelque chose comme cela ne fonctionne pas, le iterator devient invalide:Supprimer une liste d'éléments sélectionnés dans QListView
QModelIndexList indexes = ui.listview_files->selectionModel()->selectedIndexes();
foreach(QModelIndex index, indexes)
{
model->removeRow(index.row());
}
removeRows ne conviennent pas, il supprime N-éléments qui suit celui donné. J'utilise QStandardItemModel pour stocker des éléments.
Oh, la simplicité tout) Mais pas toujours retirer. Voici la solution: Index QModelIndexList = ui.listview_files-> selectionModel() -> selectedIndexes(); while (indexes.size()) { modèle-> removeRow (indexes.first(). Row()); index = ui.listview_files-> selectionModel() -> selectedIndexes(); – Yury
Modifié pour prendre votre commentaire en compte;) – sje397