如何控制 QTableWidget 的外观 header
How to control appearance of QTableWidget header
如何更改QTableWidget
header的字体及其内容边距和间距?
我想使 "Column 0"、"Column 1" 的字体更小,并且列名和 header 边缘之间没有间距。
from PyQt4 import QtCore, QtGui
app = QtGui.QApplication([])
columns = ['Column 0', 'Column 1', 'Column 2']
items = [['Row%s Col%s'%(row,col) for col in range(len(columns))] for row in range(100)]
view = QtGui.QTableWidget()
view.setColumnCount(len(columns))
view.setHorizontalHeaderLabels(columns)
view.setRowCount(len(items))
for row, item in enumerate(items):
for col, column_name in enumerate(item):
item = QtGui.QTableWidgetItem("%s"%column_name)
view.setItem(row, col, item)
view.setRowHeight(row, 16)
view.show()
app.exec_()
您可以通过以下方式更改字体大小:
item = QtGui.QTableWidgetItem()
font = QtGui.QFont()
font.setPointSize(14)
item.setFont(font)
我不确定如何更改边距和间距。如果我发现了,我可以更新这个答案。
我建议使用QTDesigner来处理布局。
编辑:
在 QtDesigner 中,您可以使用以下选项更改水平和垂直 header 大小:horizontalHeaderDefaultSectionSize 和 verticalHeaderDefaultSectionSize 以及 header 字体,方法是双击它并在属性中选择您想要的字体。
我找不到消除边距的方法,但我可以建议一个临时解决方法。
您可以尝试 resizeColumnsToContents()
,然后再用项目
填充 table
对于字体可以尝试做下
afont = PyQt4.QtGui.QFont()
afont.setFamily("Arial Black")
afont.setPointSize(11)
atable.horizontalHeaderItem(0).setFont(afont)
如果您想查看更多系列,可以随时查看 QtDesigner 中可用的系列。
表头项只不过是 QTableWidgetItems。所以你所要做的就是访问它们并将它们视为任何 QTableWidgetItem
答案和上一个几乎一样。
如何更改QTableWidget
header的字体及其内容边距和间距?
我想使 "Column 0"、"Column 1" 的字体更小,并且列名和 header 边缘之间没有间距。
from PyQt4 import QtCore, QtGui
app = QtGui.QApplication([])
columns = ['Column 0', 'Column 1', 'Column 2']
items = [['Row%s Col%s'%(row,col) for col in range(len(columns))] for row in range(100)]
view = QtGui.QTableWidget()
view.setColumnCount(len(columns))
view.setHorizontalHeaderLabels(columns)
view.setRowCount(len(items))
for row, item in enumerate(items):
for col, column_name in enumerate(item):
item = QtGui.QTableWidgetItem("%s"%column_name)
view.setItem(row, col, item)
view.setRowHeight(row, 16)
view.show()
app.exec_()
您可以通过以下方式更改字体大小:
item = QtGui.QTableWidgetItem()
font = QtGui.QFont()
font.setPointSize(14)
item.setFont(font)
我不确定如何更改边距和间距。如果我发现了,我可以更新这个答案。 我建议使用QTDesigner来处理布局。
编辑:
在 QtDesigner 中,您可以使用以下选项更改水平和垂直 header 大小:horizontalHeaderDefaultSectionSize 和 verticalHeaderDefaultSectionSize 以及 header 字体,方法是双击它并在属性中选择您想要的字体。
我找不到消除边距的方法,但我可以建议一个临时解决方法。
您可以尝试 resizeColumnsToContents()
,然后再用项目
对于字体可以尝试做下
afont = PyQt4.QtGui.QFont()
afont.setFamily("Arial Black")
afont.setPointSize(11)
atable.horizontalHeaderItem(0).setFont(afont)
如果您想查看更多系列,可以随时查看 QtDesigner 中可用的系列。
表头项只不过是 QTableWidgetItems。所以你所要做的就是访问它们并将它们视为任何 QTableWidgetItem
答案和上一个几乎一样。