QTableWidget setItem in for for добавляет только данные в последнюю строку - PullRequest
0 голосов
/ 13 января 2019

Я пытаюсь описать код ниже, чтобы добавить строки, возвращаемые sql-запросом, в QTableWidget, но в итоге получаю данные только в последней строке, а все остальные строки остаются пустыми. Хотя он вставляет правильное количество строк и столбцов

пробовал с операторами печати в каждом цикле с номером столбца с номером строки и данными. все вроде хорошо

def show_all(self):
    conn = sqlite3.connect("toDoManager.db")
    cur = conn.cursor()
    all_rows = cur.execute("SELECT * from tasks").fetchall()
    conn.commit()
    conn.close()
    self.tableWidget_taskResults.setRowCount(0)
    for row_num, row_data in enumerate(all_rows):
        self.tableWidget_taskResults.insertRow(row_num)
        #print(row_num,row_data)
        self.tableWidget_taskResults.setColumnCount(0)
        for col_num, col_data in enumerate(row_data):
            self.tableWidget_taskResults.insertColumn(col_num)
            #print(row_num,col_num,col_data)
            self.tableWidget_taskResults.setItem(row_num,col_num,QtWidgets.QTableWidgetItem(str(col_data)))
            #print("widget data ", QtWidgets.QTableWidgetItem(str(col_data)))
...