Python PyQt:如何为各个标题设置不同的标题大小?
我有一个包含两个项目的列表,一个单词和一个数字。这个列表将使用tablewidget显示 我的目标是生成一个包含两列和必要行的表,但是包含单词的列的标题应该大于数字列 我可以使用调整列大小来调整内容,但我希望在调整大小后,表格周围没有空白Python PyQt:如何为各个标题设置不同的标题大小?,python,pyqt,resize,qtablewidget,qheaderview,Python,Pyqt,Resize,Qtablewidget,Qheaderview,我有一个包含两个项目的列表,一个单词和一个数字。这个列表将使用tablewidget显示 我的目标是生成一个包含两列和必要行的表,但是包含单词的列的标题应该大于数字列 我可以使用调整列大小来调整内容,但我希望在调整大小后,表格周围没有空白 对于gui代码的创建,我正在使用QtDesigner。谢谢。该类中有一些方法可能会满足您的需要。最简单的是: table.horizontalHeader().setStretchLastSection(True) 这将确保自动调整最后一列的大小以适应表中的
对于gui代码的创建,我正在使用QtDesigner。谢谢。该类中有一些方法可能会满足您的需要。最简单的是:
table.horizontalHeader().setStretchLastSection(True)
这将确保自动调整最后一列的大小以适应表中的可用空间,保持其他列的宽度不变(用户可以调整大小)
或者,也可以使用一些方法来设置列的长度
对于Qt5:
table.setColumnWidth(1, 80)
table.horizontalHeader().setSectionResizeMode(0, QHeaderView.Stretch)
对于Qt4:
table.setColumnWidth(1, 80)
table.horizontalHeader().setResizeMode(0, QHeaderView.Stretch)
这将固定第二列的宽度,并确保自动调整第一列的大小以填充剩余空间(但防止用户进行任何其他调整)。最佳解决方案是,在
Qt5
中,您必须使用setSectionResizeMode
而不是setResizeMode
:
tabv = QTableView()
tabv.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
或
有没有一种方法可以使用Qt设计来实现这一点?是否有选项?designer中没有用于
ResizeMode
的选项,但有用于setStretchLastSection
(即属性编辑器中的标题/水平标题StretchLastSection
)的选项。
tabv.horizontalHeader().setSectionResizeMode(1)