QTableView设置单元格颜色未生效的问题

问题:

 1 void MainWindow::on_tableview_clicked(const QModelIndex& index)
 2  {
 3   item = new QStandardItem("clicked");
 4      //ui->plant_table->data()
 5      item->setData(QBrush(Qt::red),Qt::BackgroundRole);//.setColor(Qt::red);
 6 
 7      model->setItem(row,col,item);
 8 
 9      qDebug()<<""<<model->item(row, col)->data(Qt::BackgroundRole);// QVariant(QBrush, QBrush(QColor(ARGB 1, 1, 0, 0),SolidPattern))
10  
11      ui->plant_table->viewport()->update();
12 
13     //指定单元格颜色未改变

 

原因及解决方法:

 

1 QTableView::item{
2     padding: 0px;
3     margin: 0px;
4     border: 0.5px solid rgb(205,208,209);
5     margin:0.5px;
6 }
7 
8 //QTableView设置了Item样式表与setData()所设置的背景发生冲突,导致点击所设置的背景色无效,注释上述样式表后点击色设置成功。

 

 

 

  

 

posted @ 2024-05-08 10:12  乐吴  阅读(79)  评论(0编辑  收藏  举报