Вопрос:
Я хочу очистить свой QTableWidget.
Прежде всего, я выбираю пользователя в qcombobox после этого, я нажимаю кнопку qpushbutton, и я заполняю его из записей базы данных; когда я выбираю другого пользователя, и я нажимаю кнопку qpush, чтобы добавить данные, которые я пытаюсь очистить с помощью:
self.tableFriends.clear()
Данные исчезают, но строки остаются.
Код, который я заполняю,:
def getFriends(self): id_us = self.cbUser.itemData(self.cbUser.currentIndex()).toPyObject() rowIndex = 0 self.tableFriends.clear() for row in self.SELECT_FRIENDS(id_us): self.tableFriends.insertRow(rowIndex) for column in range(0,3): newItem = QtGui.QTableWidgetItem(str(row[column]).decode(‘utf-8’)) self.tableFriends.setItem(rowIndex,column,newItem) rowIndex = rowIndex + 1 Лучший ответ:
Вам нужно удалить строки отдельно, например:
while (self.tableFriends.rowCount() > 0) { self.tableFriends.removeRow(0); }
Вы также можете попробовать:
tableFriends.setRowCount(0);
Но это может не сработать, прошло некоторое время с тех пор, как я использовал Qt.