Переместить элементы из одного QListWidget в другой - PullRequest
1 голос
/ 25 января 2011

У меня есть QListWidgets, один список источников, один список судьбы и одна кнопка.Всякий раз, когда нажимается кнопка, я хочу, чтобы выбранные элементы из исходного списка были удалены и вставлены в список назначений.Я пытался source_list.removeWidgetItem(aSelectedItem), но это даже не делает ничего.:( Что я делаю не так? Нужно ли как-то обновлять список потом?

1 Ответ

4 голосов
/ 25 января 2011

takeItem возьмет элемент из source_list и даст вам указатель на него, который вы можете использовать, чтобы добавить его в список назначения.Что-то вроде:

source_list = new QListWidget();
dest_list = new QListWidget();
new QListWidgetItem(tr("Oak"), source_list);
new QListWidgetItem(tr("Birch"), source_list);
connect(source_list, SIGNAL(clicked(QModelIndex)), this, SLOT(swapEntry(QModelIndex)));


void MyWidget::swapEntry(QModelIndex index)
{
    dest_list->insertItem(dest_list->count(), source_list->takeItem(index.row()));
}
...