Как удалить все выбранные элементы в QListWidget? - PullRequest
12 голосов
/ 10 августа 2011

QListWidget :: selectedItems возвращает список QListWidgetItem, но единственной функцией для удаления элемента, которую я нашел, является takeItem, который принимает только индексы, а функция selectedIndexes защищена.

Ответы [ 3 ]

25 голосов
/ 10 августа 2011

Попробуйте

qDeleteAll(listWidget->selectedItems());
3 голосов
/ 10 августа 2011

Перебор списка SelectedItemsList:

QList<QListWidgetItem *> itemList = widget->selectedItems();
for (int i=0; i<itemList.size(); i++) {
     widget->takeItem(widget->indexFromItem(itemList[i]));
}

Я думаю,

widget->removeItemWidget(itemList[i]);

также может работать

0 голосов
/ 03 апреля 2016

ui-> listWidget-> ясно ();будет делать так же qt5

...