Как изменить цвет фона для пустой ячейки в QTableWidget - программирование
Подтвердить что ты не робот

Как изменить цвет фона для пустой ячейки в QTableWidget

Если ячейка имеет некоторые данные, используя

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

чтобы изменить цвет фона, будет работать, но если ячейка пустая, это не сработает.

4b9b3361

Ответ 1

Вы не можете установить цвет фона ячейки, если он не содержит QTableWidgetItem (поскольку цвет фона является свойством элемента).

Таким образом, вам нужно сначала заполнить ваш QTableWidget пустыми элементами. В вашем примере создайте элемент, прежде чем пытаться установить цвет фона.

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

Также обратите внимание, что вместо setBackgroundColor следует использовать setBackground, поскольку последний устарел.