PySide6(Qt for Python) QTableWidget表头边框线问题
这个问题是在Windows10平台下特有问题。
网络上有很多Qt C++的解决方案。但是没有特定的PySide6的解决方案(以下是Qt C++的解决方案)。
https://blog.csdn.net/qq_22642239/article/details/122863344
问题描述
C++的解决方案是设置纵横表头的样式表:horizontalHeader,verticalHeader来解决问题。
C++的解决方案思路是可以借鉴的。但是在处理QTableCornerButton的样式的时候出现问题。
在转换到Python方案的时候,发现horizontalHeader,verticalHeader的QHeaderView样式是生效的。但是QTableCornerButton是不生效的,甚至会影响verticalHeader的QHeaderView样式。
发现
后来我看到样式表的内容,这样式表项的名称有些不太对头。QTableCornerButton?
QTableCornerButton这个按钮是纵横表头共有的一个东西,那为什么只在verticalHeader中设置样式?
我就考虑QTableCornerButton样式是否依赖于verticalHeader?
后续我用pyside6-designer将样式表套用到QTableWidget里面,发现样式表是没问题的。
探索
经过探索,这个问题的解决是可以不需要单独设置horizontalHeader,verticalHeader的样式。
这个问题是QTableWidget的展示问题,直接对QTableWidget进行样式表修改就OK了!
QTableCornerButton它自己处理右下的边框线(相对初始纵横表头左上边框线)
纵横表头只需要处理好自己的右下边框线就能组成完整的边框线。(QHeaderView样式直接对QTableWidget负责,纵横表头就会套用这个样式,不需要单独设置)
实际代码与效果(tableWidget_product是我的QTableWidget实例):
self.__ui.tableWidget_product.setStyleSheet(
'QTableCornerButton::section{'
'border-top:0px solid #E5E5E5;'
'border-left:0px solid #E5E5E5;'
'border-right:0.5px solid #E5E5E5;'
'border-bottom: 0.5px solid #E5E5E5;'
'background-color:white;'
'}'
"QHeaderView::section{"
"border-top: 0px solid #E5E5E5;"
"border-left: 0px solid #E5E5E5;"
"border-right: 0.5px solid #E5E5E5;"
"border-bottom: 0.5px solid #E5E5E5;"
"background-color:white;"
"padding:4px;"
"}"
)

PySide6(Qt for Python) QTableWidget表头边框线问题的更多相关文章
- C# 对Excel 单元格格式, 及行高、 列宽、 单元格边框线、 冻结设置
一.对行高,列宽.单元格边框等的设置 这篇简短的文字对单元格的操作总结的比较全面,特此转载过来. private _Workbook _workBook = null; private Workshe ...
- C# Excel行高、列宽、合并单元格、单元格边框线、冻结
private _Workbook _workBook = null;private Worksheet _workSheet = null;private Excel.Application _ex ...
- C#操作EXCEL常见操作集合(行高,列宽,合并单元格,单元格边框线)
private _Workbook _workBook = null; private Worksheet _workSheet = null; private Excel.Application _ ...
- 移动端视网膜(Retina)屏幕下1px边框线 解决方案
原因: 因为Retine屏的分辨率始终是普通屏幕的2倍,1px的边框在devicePixelRatio=2的retina屏下会显示成2px. 但在IOS8中,已经支持0.5px了,那就意味着, 在de ...
- 为WPF和Silverlight的Grid添加边框线(zz)
Grid是WPF和Silverlight中的一个重要的布局元素,其他的布局元素还有StackPanel, Canvas, Border等等.从字面上说,Grid是一个表格的意思,它的使用也确实很方 ...
- iOS 删除黑色边框线导航栏&删除搜索框的阴影边界线和中黑色文本输入框 - 解
删除黑色边框线导航栏 in viewDidload: [self.navigationController.navigationBar setBackgroundImage:[[UIImage all ...
- QT自绘标题和边框
在QT中如果想要自绘标题和边框,一般步骤是: 1) 在创建窗口前设置Qt::FramelessWindowHint标志,设置该标志后会创建一个无标题.无边框的窗口. 2)在客户区域的顶部创建一个自绘标 ...
- table表格设置边框线为单实线
设置table表格边框为单实线的方法有两种 第一种方法就是利用table标签cellspacing=0属性来实现,cellspacing是内边框和外边框的距离,这种方法实现的看起来是单实线,其实是内边 ...
- iOS 让视图UIView 单独显示某一侧的边框线
有时候需要让view显示某一侧的边框线,这时设置layer的border是达不到效果的.在网上查阅资料发现有一个投机取巧的办法,原理是给view的layer再添加一个layer,让这个layer充当边 ...
- echarts 怎样去掉白色边框线 和怎样去除背景中的网格
echarts怎样去掉白色边框线: echarts怎样去除背景中的网格线
随机推荐
- jQuery绑定方法
流程/*** * 1.文件命名 * jquery.banner.1.0.0.js * jquery.banner.js * 2.添加匿名函数 * (function(){})() * 3.给插件前后添 ...
- Apache Hudi 0.9.0版本重磅发布!更强大的流式数据湖平台
1. 重点特性 1.1 Spark SQL支持 0.9.0 添加了对使用 Spark SQL 的 DDL/DML 的支持,朝着使所有角色(非工程师.分析师等)更容易访问和操作 Hudi 迈出了一大步. ...
- [GIT]指定分支下创建分支
1 解决方案 Eg: master分支下创建 $ git checkout master //切换到master分支下 $ git branch branch_tmp_A //在本地仓库创建临时分支b ...
- 四月二十八号Java基础知识
1.由于Thread类位于java.lang包中,因而程序的开头不用import导入任何包就可直接使用try{ sleep((int)(1000*Math.random()));//sleep()方法 ...
- day120:MoFang:修复宠物喂食饱食度不增加的BUG&修复宠物死亡导致数据错乱的BUG
目录 BUG1:修复宠物喂食饱食度未增加的BUG BUG2:修复当用户拥有2个宠物时,如果第1个宠物挂了,会出现第二个宠物变成第1个宠物的情况,会导致数据发生混乱出现bug BUG1:修复宠物喂食饱食 ...
- xtrabackup8.0.27备份失败
问题描述:mysql8.0.27备份出现中断,重新备份发现xtrabackup备份失败,xtrabackup与mysql版本不匹配,后来想起来时mysql进行了升级,8.0.27->8.0.29 ...
- DBA面试小结
问题描述:一个DBA在面试过程中,面试官最喜欢提问哪些问题,经过这些天的面试经历,总结了一些面试经验. 普通的外包可能只有一轮技术面试再加一轮人资面试,外包项目一般急需用人,所以面试流程基本简化,合适 ...
- 【故障公告】被放出的 Bing 爬虫,又被爬宕机的园子
这些巨头爬虫们现在怎么了?记忆中2022年之前的十几年,园子没有遇到过被巨头爬虫们爬宕机的情况,巨头们都懂得爱护,都懂得控制节奏,都懂得在爬网时控制并发连接数以免给目标网站造成过大压力. 从去年开始, ...
- 关于PM系统以及OA系统的工作基本心态
这个系统的目的是什么? 这个系统的初衷是好的,是一个信息化管理的数据科学系统,目的是更好的累计公司的业务数据. 但实际操作过程中,包括推广过程中,你能看到上层人员对于这个系统的态度,更像是一个个人企业 ...
- 2023-02-14:魔物了占领若干据点,这些据点被若干条道路相连接, roads[i] = [x, y] 表示编号 x、y 的两个据点通过一条道路连接。 现在勇者要将按照以下原则将这些据点逐一夺回:
2023-02-14:魔物了占领若干据点,这些据点被若干条道路相连接, roads[i] = [x, y] 表示编号 x.y 的两个据点通过一条道路连接. 现在勇者要将按照以下原则将这些据点逐一夺回: ...