PyQt4:获取QListWidget中所有标签的列表

时间:2012-08-23 08:33:02

标签: python qt4 pyqt4

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

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

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

感谢您的帮助!

3 个答案:

答案 0 :(得分:7)

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

items = []
for index in xrange(self.ui.QListWidget.count()):
     items.append(self.ui.QListWidget.item(index))
labels = [i.text() for i in items]

答案 1 :(得分:1)

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

lst = [i.text() for i in self.lstFiles.findItems("", QtCore.Qt.MatchContains)]

答案 2 :(得分:0)

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

labels = [list_widget.item(i).text() for i in range(list_widget.count())]