我想在具有特定风格的Qt中显示表格。我想绘制具有相同颜色和相同宽度的所有网格线。
问题是,QHeaderView
的样式很难。我总是得到2px网格宽度或没有网格。
我有一个带有一个QTableWIdget
的窗口
和asociated styleSheet
QWidget {
background-color: #333333;
color: #fffff8;
}
QHeaderView::section {
background-color: #646464;
padding: 4px;
border: 1px solid #fffff8;
font-size: 14pt;
}
QTableWidget {
gridline-color: #fffff8;
font-size: 12pt;
}
QTableWidget QTableCornerButton::section {
background-color: #646464;
border: 1px solid #fffff8;
}
是否有任何技巧让所有网格线宽1px?我使用的是4.8.5,我无法升级到5.x版。
答案 0 :(得分:4)
在border-style: none;
,QHeaderView::section
,border-left
和border-right
开始后border-top
中的 border-bottom
工作。 QHeaderView::section
的正确样式应为
QHeaderView::section {
background-color: #646464;
padding: 4px;
font-size: 14pt;
border-style: none;
border-bottom: 1px solid #fffff8;
border-right: 1px solid #fffff8;
}
QHeaderView::section:horizontal
{
border-top: 1px solid #fffff8;
}
QHeaderView::section:vertical
{
border-left: 1px solid #fffff8;
}
答案 1 :(得分:2)
我认为你所做的是你为部分单元格添加了额外的边框,而部分属性看起来应该是这样(虽然我没有尝试这个解决方案)
QHeaderView::section {
background-color: #646464;
padding: 4px;
border: 0px;
font-size: 14pt;
}
有关如何设置标题样式的详细信息,请参阅: