Gia*_*nou 9 python resize pyqt qtablewidget qheaderview
我有一个包含两个项目列表的列表,一个单词和一个数字.这个列表将使用tablewidget呈现.
我的目标是生成一个包含两列并且具有必要行的表,但是具有单词的列的标题应该大于数字列.
我可以使用resize列来调整内容,但是我希望在调整大小后桌子周围没有白色的空白空间.
为了创建gui代码,我正在使用QtDesigner.Thanks.
ekh*_*oro 17
这个类有一些方法QHeaderView可能会做你想要的.最简单的是:
table.horizontalHeader().setStretchLastSection(True)
Run Code Online (Sandbox Code Playgroud)
这将确保自动调整最后一列的大小以适应表中的可用空间,保留其他列的宽度(并且可由用户调整大小).
或者,存在用于设置ResizeMode列的方法.
对于Qt5:
table.setColumnWidth(1, 80)
table.horizontalHeader().setSectionResizeMode(0, QHeaderView.Stretch)
Run Code Online (Sandbox Code Playgroud)
对于Qt4:
table.setColumnWidth(1, 80)
table.horizontalHeader().setResizeMode(0, QHeaderView.Stretch)
Run Code Online (Sandbox Code Playgroud)
这将修复第二列的宽度,并确保第一列自动调整大小以填充剩余空间(但阻止用户进行任何其他大小调整).
小智 6
对此最好的解决方案,Qt5你必须使用setSectionResizeMode而不是setResizeMode:
tabv = QTableView()
tabv.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
Run Code Online (Sandbox Code Playgroud)
要么
tabv.horizontalHeader().setSectionResizeMode(1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12210 次 |
| 最近记录: |