Python 将行QTWidgetItem添加到(继承的)QTableWidget不会';不显示单元格中的任何值

Python 将行QTWidgetItem添加到(继承的)QTableWidget不会';不显示单元格中的任何值,python,qt,Python,Qt,下面的代码几乎可以工作,因为输出看起来是正确的,但是实际的GUI小部件没有显示任何项目 from pyqtgraph.Qt import QtCore, QtGui from PyQt4.QtCore import * from PyQt4.QtGui import * class MyTable(QTableWidget): def __init__(self, data, *args): QTableWidget.__init__(self, *args)

下面的代码几乎可以工作,因为输出看起来是正确的,但是实际的GUI小部件没有显示任何项目

from pyqtgraph.Qt import QtCore, QtGui
from PyQt4.QtCore import *
from PyQt4.QtGui import *

class MyTable(QTableWidget):
    def __init__(self, data, *args):
        QTableWidget.__init__(self, *args)
        self.data = data
        self.setmydata()

    def setmydata(self):

        horHeaders = []
        for idx, key in enumerate(sorted(self.data)):
            horHeaders.append(key)

        self.setHorizontalHeaderLabels(horHeaders)

    def addrow(self, triangleObject):
        print 'addrow called'
        rowNum = self.rowCount()
        self.insertRow(rowNum)

        i = 1
        for val in triangleObject.triangle:
            print rowNum, i, val
            self.setItem(rowNum, i, QtGui.QTableWidgetItem(val))
            i += 1

        self.resizeColumnsToContents()
        self.resizeRowsToContents()

class Triangle(Observer):
    def __init__(self, slist):
        self.ptr = 0
        self.triangle = {}
        self.order = {}

        loopCount = 0
        for s in slist:
            sindex = sIndexHash[s]
            self.triangle[sindex] = (sindex, 0, 0, 0, 0)            
            self.order[loopCount] = sindex
            loopCount = loopCount + 1

data = {'S1' , 'S2', 'S3'}  # the column names
table = MyTable(data, 0, 3) # create an initial table with just column headers no rows

Triangle one
Triangle two
Triangle three
Triangle four
Triangle five
Triangle six
Triangle seven
Triangle eight

table.addrow(one)
table.addrow(two)
table.addrow(three)
table.addrow(four)
table.addrow(five)
table.addrow(six)
table.addrow(seven)
table.addrow(eight)
我可以看到以下输出。我还可以在屏幕上看到一个小部件,它看起来像一个小电子表格,具有正确的列名但我在小表格小部件单元格中没有看到任何内容?

addrow called
0 1 1
0 2 4
0 3 7
addrow called
1 1 2
1 2 3
1 3 7
addrow called
2 1 4
2 2 5
2 3 6
addrow called
3 1 8
3 2 0
3 3 5
addrow called
4 1 8
4 2 3
4 3 6
addrow called
5 1 0
5 2 3
5 3 4
addrow called
6 1 9
6 2 10
6 3 3
addrow called
7 1 0
7 2 1
7 3 2
我不得不说

self.setItem(rowNum, i, QtGui.QTableWidgetItem(str(val)))