如何清除pyqt QTableWidget?

时间:2015-03-25 21:02:31

标签: python-2.7 pyqt qtablewidget

我想清除我的QTableWidget。

首先,我在qcombobox中选择一个用户,之后点击一个qpushbutton,我从数据库记录填充它;当我选择其他用户时,我点击qpushbutton添加数据我尝试清除:

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

1 个答案:

答案 0 :(得分:9)

您需要单独删除行,例如:

while (self.tableFriends.rowCount() > 0)
{
    self.tableFriends.removeRow(0);
}

您也可以尝试:

tableFriends.setRowCount(0);

但这可能行不通,因为我使用过Qt已经有一段时间了。