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()所设置的背景发生冲突,导致点击所设置的背景色无效,注释上述样式表后点击色设置成功。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)