我正在使用 QListWidget 来显示 QListWidgetItem 的列表
这个列表是从文件中读取的。当我关闭文件时,我想清空列表。
我在我的 :
上做了这个方法class QuestionsList(QtGui.QListWidget):
def __init__(self, parent):
super(QuestionsList, self).__init__(parent)
self.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
self.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)
self.setProperty("showDropIndicator", False)
self.setAlternatingRowColors(True)
self.quiz = None
def loadQuiz(self, quiz):
self.quiz = quiz
self.flush()
if quiz is not None:
i = 1
for question in quiz.questions_list:
self.addItem(QuestionItem(i, question, self))
i += 1
def flush(self):
for item in [self.item(i) for i in xrange(self.count())]:
print unicode(item.text())
self.removeItemWidget(item)
del item
loadQuiz 方法有效,flush 方法打印每个项目的文本,但 removeItemWidget 方法和 del item 方法都无法清空列表。
我该怎么做?
谢谢
最佳答案
我知道这是 already answered ,但我遇到了这个问题,想找到一种方法来删除选定的项。
可以这样做:
def removeSelected(self):
for item in self.selectedItems():
self.takeItem(self.row(item))
希望这对外面的人有帮助!
关于python - 如何从 QListWidget 中删除 QListWidgetItem 并刷新显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4203312/