One way to remove item from QListWidget is to use QListWidget::takeItem which removes and returns the item :
QList<QListWidgetItem*> items = ui->listWidget->selectedItems();
foreach(QListWidgetItem * item, items)
{
delete ui->listWidget->takeItem(ui->listWidget->row(item));
}
Another way is to qDeleteAll :
qDeleteAll(ui->listWidget->selectedItems());