2013-03-25 25 views

risposta

22

Non è possibile impostare il colore di sfondo di una cella a meno che non contenga uno QTableWidgetItem (poiché il colore di sfondo è una proprietà dell'elemento).

Quindi è necessario popolare il tuo QTableWidget con elementi vuoti prima. Nel tuo esempio, crea l'oggetto prima di provare a impostare il colore di sfondo.

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

Si prega di notare, inoltre, che si dovrebbe usare setBackground anziché setBackgroundColor in quanto quest'ultimo è deprecato.

+0

Risolto un problema simile per me. Qualche idea sul perché questo funziona e '-> background.setColor()' no? –