Qt.TableWidget显示具有不同背景颜色的线

问题描述

Qt.TableWidget。当第一个值更改时,以不同的背景色显示线条。 在第一个字段中具有相同值的所有行应具有相同的背景色。 如果值更改,则背景颜色应更改,直到下一个值更改为止。

此刻,我只得到第一行不同的颜色。

    def read_csv_file(self,filename):
    self.tableWidget.setRowCount(0)
    with open(filename,"r",newline='',encoding='utf-8') as infile:
        read_data_protocol = csv.reader(infile,delimiter=";",quotechar='"')
        next(read_data_protocol)
        date_temp = ""

        for line in read_data_protocol:
            row = self.tableWidget.rowCount()
            self.tableWidget.insertRow(row)

            item0 = QtWidgets.QTableWidgetItem(line[0])
            item1 = QtWidgets.QTableWidgetItem(line[1])
            item2 = QtWidgets.QTableWidgetItem(line[2])
            item3 = QtWidgets.QTableWidgetItem(line[3])

            if date_temp != line[0]:
                item0.setBackground(QtGui.QColor(250,250,177))
                item1.setBackground(QtGui.QColor(250,177))
                item2.setBackground(QtGui.QColor(250,177))
                item3.setBackground(QtGui.QColor(250,177))

            self.tableWidget.setItem(row,item0)
            self.tableWidget.setItem(row,1,item1)
            self.tableWidget.setItem(row,2,item2)
            self.tableWidget.setItem(row,3,item3)
            date_temp = line[0]

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)