qt QTableWidget 单元格线 设置加粗代码表示
时间: 2025-04-27 14:34:56 浏览: 36
### 设置 QTableWidget 单元格线条加粗
为了实现 `QTableWidget` 的网格线加粗效果,可以通过自定义绘制来修改表格外观。具体方法是在子类化 `QStyledItemDelegate` 后重写其 `paint()` 函数,在其中调整绘图参数以达到所需视觉效果[^1]。
下面是一个简单的 Python 实现例子:
```python
from PyQt5.QtWidgets import QApplication, QTableView, QStyledItemDelegate, QStyleOptionViewItem, QWidget
from PyQt5.QtGui import QPainter, QColor, QPen
import sys
class BoldGridDelegate(QStyledItemDelegate):
def paint(self, painter: QPainter, option: QStyleOptionViewItem, index) -> None:
# 调用父类的 paint 方法完成默认绘制行为
super().paint(painter, option, index)
pen = QPen()
pen.setWidth(2) # 设置线条宽度为2像素
pen.setColor(QColor('black')) # 设置颜色为黑色
painter.save() # 保存当前状态
painter.setPen(pen)
rect = option.rect.adjusted(0, 0, -1, -1) # 防止画到相邻单元格上
painter.drawRect(rect) # 绘制矩形边框
painter.restore() # 恢复之前的状态
if __name__ == '__main__':
app = QApplication(sys.argv)
table_widget = QTableWidget(4, 3) # 创建一个有四行三列的表单
delegate = BoldGridDelegate(table_widget)
table_widget.setItemDelegate(delegate) # 应用代理
table_widget.show()
sys.exit(app.exec_())
```
此代码片段展示了如何通过创建一个新的委托对象并将其应用到 `QTableWidget` 来改变所有单元格周围的边界样式,从而实现了更粗的网格线显示效果。
阅读全文
相关推荐


















