Si une cellule contient des données, en utilisant
tableWidget->item(8,0)->setBackgroundColor(Qt::red);
pour changer la couleur d'arrière-plan fonctionnera, mais si une cellule est vide, elle échouera.
Vous ne pouvez pas définir la couleur d'arrière-plan d'une cellule à moins qu'elle ne contienne un QTableWidgetItem
(car la couleur d'arrière-plan est une propriété de l'élément).
Vous devez donc d'abord remplir votre QTableWidget
avec des éléments vides. Dans votre exemple, créez l'élément avant d'essayer de définir la couleur d'arrière-plan.
tableWidget->setItem(8, 0, new QTableWidgetItem);
tableWidget->item(8, 0)->setBackground(Qt::red);
Veuillez également noter que vous devez utiliser setBackground
au lieu de setBackgroundColor
car ce dernier est obsolète.