为什么 pyqt tablewigdet 只显示行号而不显示数据?

Why pyqt tablewigdet is only displaying row number and no data?

我想知道问题是来自 pony.orm 还是我的 python 代码?

@db_session
def load_data(self):
    result = db.execute("""SELECT * FROM Product""")
    self.ui.tableWidget.setRowCount(0)
    for row_number, row_data in enumerate(result):
        self.ui.tableWidget.insertRow(row_number)
        for column_number, data in enumerate(row_data):
            self.ui.tableWidget.setItem(row_number, column_number, QTableWidgetItem(str(data)))

columnCount 属性 默认为 0,因此必须设置为实际的列数才能正确设置和显示项目。

@db_session
def load_data(self):
    result = db.execute("""SELECT * FROM Product""")
    self.ui.tableWidget.setRowCount(0)
    for row_number, row_data in enumerate(result):
        self.ui.tableWidget.insertRow(row_number)
        <b>if len(row_data) > self.ui.tableWidget.columnCount():
            self.ui.tableWidget.setColumnCount(len(row_data))</b>
        for column_number, data in enumerate(row_data):
            self.ui.tableWidget.setItem(row_number, column_number, QTableWidgetItem(str(data)))