【发布时间】:2014-08-17 11:22:09
【问题描述】:
我有一个QListWidget,它显示了在 Python 中使用 PyQt 的名称列表。如何获取给定名称的 QListWidgetItem?
例如,如果我有以下 QListWidget 有 4 个项目,我如何获得包含 text = dan 的项目?
【问题讨论】:
标签: python qt pyqt pyqt4 pyside
我有一个QListWidget,它显示了在 Python 中使用 PyQt 的名称列表。如何获取给定名称的 QListWidgetItem?
例如,如果我有以下 QListWidget 有 4 个项目,我如何获得包含 text = dan 的项目?
【问题讨论】:
标签: python qt pyqt pyqt4 pyside
您可以使用QListWidget::findItems() 函数。例如:
QList<QListWidgetItem *> items = listWidget->findItems("dan", Qt::MatchExactly);
if (items.size() > 0) {
// An item found
}
【讨论】:
相当于vahancho的回答的python:
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()
【讨论】:
Qt.MatchExactly的反义词?例如,您正在找到“danny”,但上面仍然有“dan”,所以它仍然有效......我认为Qt有它,但我不知道如何......你有没有以防万一?谢谢
items = self.listWidgetName.findItems("dan",Qt.MatchContains);
这在使用QListWidget item 时效果最好
【讨论】: