但我在QTableView
中设置了样式表:
QTableView {
gridline-color: black;
background-color: transparent;
}
QHeaderView {background-color: transparent;
}
QHeaderView::section{
border-style: none;
border-bottom: 1px solid rgb(0,0,0);
background-color: transparent;
margin-bottom:5px;
margin-top:5px;
}
QTableView QTableCornerButton::section {
bottom-style:none;
border-bottom: 1px solid rgb(0,0,0);
}
我可以处理尺寸问题,但是这里有两个主要问题:
1.边框之间的文字没有任何空格,我做了margin-top:5px;
和margin-bottom:5px;
但是它改变了所有QHeaderView
不仅QHeaderView
的文字。 (解决方案是使用填充而不是边距)
2.每行都有一个右边,左上边界。我不想那样。
我试过了:
QTableView QTableCornerButton::section {
border-style:none;
border-bottom: 1px solid rgb(0,0,0);
}
不幸的是QTableCornerButton:section
它有问题吗?
感谢您的帮助
答案 0 :(得分:1)
注意:我尚未经过验证,这些只是尝试的建议,请在需要时上传输出
1 - 你是什么意思"它改变了所有QHeaderView不仅仅是QHeaderView"
也许您希望仅将余量设置为标题视图的内容(文本):在这种情况下,使用填充不是保证金。
QHeaderView::section{
/* your style */
padding-bottom:5px;
padding-top:5px;
}
2 - 每行都有一个右边,左边连上边框。我不想那样。
QTableView {
/* sone additional style */
gridline-color: cyan
background-color: cyan
}
QTableView::item
{
border-style: none;
border-bottom: 1px solid rgb(0,0,0);
}
我会像在QHeaderView风格中那样尝试使用border-style(设置为none)。
编辑:您当然必须通过代码禁用QTableView的showgrid选项,以使其成为可行的解决方案
tableView.setShowGrid(false);