Frage

Ich muss qlistwidgets, eine Quellliste, eine Schicksalsliste und eine Schaltfläche. Wenn die Schaltfläche klickt, möchte ich, dass die ausgewählten Elemente aus der Quellliste entfernt und in die Schicksalsliste eingefügt werden. Ich versuchte zu source_list.removeWidgetItem(aSelectedItem) Aber das tut nicht einmal etwas. :( Was mache ich falsch? Muss ich die Liste danach irgendwie aktualisieren?

War es hilfreich?

Lösung

takeItem Nehmen Sie das Element aus der Source_List und geben Sie einen Zeiger darauf, mit dem Sie ihn an Ihre Zielliste anhängen können. Etwas wie:

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()));
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top