思路:表格新增一列 —> 构建添加报警灯函数 —> 调用
遇到的问题点:1.表格宽度软件中设置但是未应用到显示
ui.ShowDate->setColumnCount(4);
ui.ShowDate->setColumnWidth(0, screenWidth * 0.03);
ui.ShowDate->setColumnWidth(1, screenWidth * 0.24);
ui.ShowDate->setColumnWidth(2, screenWidth * 0.34);
ui.ShowDate->setColumnWidth(3, screenWidth * 0.34);
四列还是等宽 - . - |||
2.报警灯添加后单元格背景颜色变为白色
解决进度:
问题1:代码中去掉自适应,将模式选为固定宽度
// 设置每列的固定宽度,避免自动调整
ui.ShowDate->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed);
修改后效果如下:
问题2:信号灯颜色对但是背景变白
使用设置图标的形式
// 创建图标对象
QIcon icon(":/ioc/image/green.png");
QIcon icon1(":/ioc/image/red.png");
然后将图标加入表格中
if (App::_PLCstate) {
PLC2->setPixmap(icon.pixmap(QSize(14, 14)));
ui.ShowDate->setCellWidget(3, 0, PLC2);
}
else{
PLC2->setPixmap(icon1.pixmap(QSize(16, 16)));
ui.ShowDate->setCellWidget(3, 0, PLC2);
}
最后效果如图