3

我是 PyQt4 的新手,尤其是 QListWidget。我正在尝试获取 QListWidget 中当前显示的所有标签的(Python)列表。我能够获得所有 QListWidgetItems 的列表,但我不确定如何从那里获取标签......

这是我用来获取所有 QListWidgetItems 列表的方法:

    items = []
    for index in xrange(self.ui.QListWidget.count()):
         items.append(self.ui.QListWidgetitem(index))

谢谢你的帮助!

4

3 回答 3

7

.text()返回 QListWidgetItem 中的文本。请注意,您需要调用.item(index)原始 QListWidget 实例来获取列表小部件中包含的项目:

items = []
for index in xrange(self.ui.QListWidget.count()):
     items.append(self.ui.QListWidget.item(index))
labels = [i.text() for i in items]
于 2012-08-23T08:36:21.637 回答
2

您可以强制列表小部件返回所有项目findItems

lst = [i.text() for i in self.lstFiles.findItems("", QtCore.Qt.MatchContains)]
于 2015-10-01T08:22:12.697 回答
1

这是使用列表理解的解决方案:

labels = [list_widget.item(i).text() for i in range(list_widget.count())]
于 2020-06-17T19:50:53.613 回答