如何通过名称获取QListWidget项?

12 投票
3 回答
22506 浏览
提问于 2025-04-18 11:12

我有一个 QListWidget,它用 PyQt 在 Python 中显示一系列名字。我该如何获取一个特定名字对应的 QListWidgetItem 呢?

比如说,如果我的 QListWidget 里有4个项目,我该如何找到包含文本“dan”的那个项目呢?

QListWidget

3 个回答

3
items = self.listWidgetName.findItems("dan",Qt.MatchContains);

这在使用 QListWidget 项目时效果最好。

7

你可以使用 QListWidget::findItems() 这个函数。比如说:

QList<QListWidgetItem *> items = listWidget->findItems("dan", Qt::MatchExactly);
if (items.size() > 0) {
    // An item found
}
19

这个是用Python写的,跟vahancho的回答是一样的:

items = self.listWidgetName.findItems("dan",Qt.MatchExactly)

if len(items) > 0:

    for item in items:
        print "row number of found item =",self.listWidgetName.row(item)
        print "text of found item =",item.text() 

撰写回答