【发布时间】:2022-02-17 11:15:10
【问题描述】:
我正在尝试使用 pyqt5 制作表格
这是我的代码:
table = QTableWidget()
table.setRowCount(len(dataElementsList)+1)
table.setColumnCount(3)
#Add Table heads items
table.setItem(0, 0, QTableWidgetItem("Name "))
table.setItem(0, 1, QTableWidgetItem("DataType "))
table.setItem(0, 2, QTableWidgetItem("Reference Type "))
#Adding Items to the table
for i in range( len(dataElementsList) ):
name = dataElementsList[i]["dataElementName"] + " "
dataType = dataElementsList[i]["dataElementReference"] + " "
referenceType = dataElementsList[i]["dataElementReferenceType"] + " "
table.setItem(i+1, 0, QTableWidgetItem(name))
table.setItem(i+1, 1, QTableWidgetItem(dataType))
table.setItem(i+1, 2, QTableWidgetItem(referenceType))
#Make Cell stretch with the data in it
header = table.horizontalHeader()
header.setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
header.setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
header.setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
然后在显示表格后,它将如下图所示:
我的问题是:如何删除所有这些空白并使其缩小以仅适合表格?
更新: 添加这几行代码后:
table.setSizeAdjustPolicy(table.AdjustToContents)
table.setSizePolicy(QSizePolicy.Maximum, QSizePolicy.Maximum)
问题已部分解决,但表格外仍有余量。 这是表格的更新图像:
【问题讨论】:
-
见Resize column width to fit into the QTableWidget pyqt。添加
table.setSizeAdjustPolicy(table.AdjustToContents)table.setSizePolicy(QSizePolicy.Maximum, QSizePolicy.Maximum) -
非常感谢,它部分解决了问题,但表格外仍有一点余量。
-
@musicamante 我会将更新后的表格图像添加到问题中,请检查。
-
你在使用layout managers经理,不是吗?
-
@musicamante 感谢您的帮助,我解决了。我用解决问题的步骤对问题发表了评论。