Pyqt5之QTableWidget设置列宽行高大小的几种方式

列宽、行高自动分配

# 列宽自动分配
self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
 # 行高自动分配
self.tableWidget.verticalHeader().setSectionResizeMode(QHeaderView.Stretch)

表格适应内容指定列

self.tableWidget..resizeColumnToContents(column)

手动调整

self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Interactive)

固定值

self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Fixed)

用户无法调整该部分的大小。该部分只能使用resizeSection()以编程方式调整大小。节大小默认为defaultSectionSize。

随内容分配列宽

self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
self.tableWidget.horizontalHeader().setSectionResizeMode(0, QHeaderView.ResizeToContents)

随内容分配行高

self.tableWidget.verticalHeader().setSectionResizeMode(QHeaderView.Stretch)
self.tableWidget.verticalHeader().setSectionResizeMode(0, QHeaderView.ResizeToContents)

水平方向标签拓展剩下的窗口部分,填满表格

self.tableWidget.horizontalHeader().setStretchLastSection(True)

列宽是自动分配的,但是第一列可手动调整宽度,而表格整体的列宽仍是自动分配的。第二、三列办法调整列宽,自动分配的。

self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
self.tableWidget.horizontalHeader().setSectionResizeMode(0, QHeaderView.Interactive)

自定义列宽

self.tableWidget.setColumnWidth(0, 40)
self.tableWidget.setColumnWidth(1, 200)
self.tableWidget.setColumnWidth(2, 200)

https://doc.qt.io/qt-5/qheaderview.html#ResizeMode-enum

你可能感兴趣的:(Pyqt5之QTableWidget设置列宽行高大小的几种方式)