2012-08-23 19 views
3

我是PyQt4的新手,尤其是QListWidget。我試圖獲取當前顯示在QListWidget中的所有標籤的(Python)列表。我能夠獲得所有QListWidgetItems的列表,但我不知道如何從那裏獲取標籤...PyQt4:獲取QListWidget中所有標籤的列表

這是我用來獲取所有QListWidgetItems的列表:

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

感謝您的幫助!

回答

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] 
+0

感謝快速回復! unfortunales這會引發一個錯誤:labels = [i.text()for i in items] AttributeError:'builtin_function_or_method'對象沒有屬性'text''-我錯過了什麼? – bigsleep

+0

@bigsleep:對不起,我更新了代碼以正確獲取包含的項目。 –

+0

太棒了 - 非常感謝你! – bigsleep

1

您可以強制列表部件與findItems歸還所有物品:

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