我正在尝试在QTreeView中创建垂直线;而不是像一些答案所建议的那样在线上绘画我使用样式表来修改树视图中单元格的右边框,如下所示:
ui->tripsTreeView->setStyleSheet ("QTreeView::item:!last { border-right: 0.5px solid lightgray ;}");
不幸的是,这会重置树视图上的所有其他样式表属性,使其无法使用(白色文本为白色,展开三角形为蓝色背景,自定义背景颜色消失等)。
问题:
ui->tripsTreeView->styleSheet()
只返回一个空字符串(意思是它使用了deault样式表,但是 是什么默认样式表?)答案 0 :(得分:0)
如果未设置样式表,Qt将使用与OS样式匹配的样式。当您尝试更改单个属性的样式表时,控件的整个样式表将替换为默认样式表。我不确定是否可以提取默认样式表。可能会重新实现paint()
功能重新实现的自定义委托。