2011-01-25 133 views
1

我必须QListWidgets,一个源列表,一个命令列表和一个按钮。无论何时单击按钮,我都希望从源列表中选择的项目被删除并插入命令列表中。我试图source_list.removeWidgetItem(aSelectedItem)但这甚至没有做一件事。 :(我在做什么错了?我需要以后更新列表吗?将项目从一个QListWidget移动到另一个

回答

4

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())); 
} 
相关问题