删除的我已经完成了,就是自己的方法删除的话,删不对行。如果光标停在选中的最后一行的话,删除结果正确、如果停在最上边一行的话,结果不对。我自己的写法:
QList<QListWidgetItem *> list1 = ui->chooseListWidget->selectedItems();
QList<QListWidgetItem *>::const_iterator i;
for (i = list1.constBegin(); i < list1.constEnd(); i++) {
QListWidgetItem *delitem = new QListWidgetItem(*(*i));
if (delitem) {
int row = ui->chooseListWidget->currentRow(); //这个应该是问题所在吧
ui->chooseListWidget->takeItem(row);
}
}
高手交给我的方法:
QList<QListWidgetItem *> list1 = ui->chooseListWidget->selectedItems();
for (int i = 0; i < list1.size(); ++i)
ui->chooseListWidget->takeItem(ui->chooseListWidget->row(list1));
解决问题。