如何在QTableWidget中更改空白单元格的背景颜色

时间:2013-03-25 15:08:10

标签: qt qt4 qtablewidget qt4.8 qtablewidgetitem

如果某个单元格有一些数据,请使用

tableWidget->item(8,0)->setBackgroundColor(Qt::red);

更改背景颜色将起作用,但如果单元格为空,则会失败。

1 个答案:

答案 0 :(得分:29)

您不能设置单元格的背景颜色,除非它包含QTableWidgetItem(因为背景颜色是项目的属性)。

因此,您需要首先使用空项填充QTableWidget。在您的示例中,在尝试设置背景颜色之前创建项目。

tableWidget->setItem(8, 0, new QTableWidgetItem);
tableWidget->item(8, 0)->setBackground(Qt::red);

另请注意,您应该使用setBackground代替setBackgroundColor,因为后者已被弃用。