QListWidget不会删除屏幕上的项目

时间:2014-01-02 17:35:24

标签: qt qlistwidget

我使用QListWidget将某个名称显示为一种下拉列表 在另一个QLineEdit字段中键入条目。它命中数据库并显示 所有可能的选择。当他们输入时,列表会发生变化,所以我想要 它删除所有条目并重新填充QListWidget。

当我调用以下代码时,它确实清空了QListWidget列表,但是 屏幕元素仍然可见。有人可以帮我找出原因 他们没有被从显示器中删除?我使用Qt 4.8.4。谢谢!

void myClass::clearListWidget()
{
    QListWidget * lw = m_ui->db_listWidget;

    while(lw->selectedItems().size())
    {
         delete lw->takeItem(0);
    }
    lw->update();
    lw->repaint();
    qApp->processEvents();
}

1 个答案:

答案 0 :(得分:3)

使用slot void QListWidget :: clear()清除所有内容。 QListWidget文档是here