Как я могу удалить QListWidetEtem из QlistWidget и обновить дисплей?
Вопрос
Я использую QListWidget для отображения списка QListwidetEtem
Этот список читается из файла. Когда я закрываю файл, я хочу опустошить список.
Я сделал этот метод на мой:
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 Распечатайте текст каждого элемента, но и метод NelumeIteMwidget, ни DEL Item не работает для опорожнения списка.
Как я могу это сделать ?
Спасибо
Решение
Почему не будет использовать четкий метод на QlistWidget?
Другие советы
Я знаю, что это уже ответил, но я наткнулся на этот вопрос, чтобы найти способ удалить выбранный Предметы).
Это может быть сделано так:
def removeSelected(self):
for item in self.selectedItems():
self.takeItem(self.row(item))
Надеюсь, это поможет кому-то там!
На самом деле, RemokeTeMwidget не работает для этой цели.
Вот мое решение
def flush(self):
while self.count() > 0:
self.takeItem(0)
Метод TakeItem (0) работает как POP () в стеке и TakeiTem (count () - 1), как поп () в очереди.