python - PyQt5 QTableview 列调整大小
问题描述
使用具有 4 列(隐藏 1 列)的 PyQt5 QTableView。我需要将第一列和第三列固定为特定大小并允许中间列调整大小(即占用其余空间)。我尝试了以下策略,但它没有产生我正在寻找的东西:
self.icdDataView.setColumnWidth(1, 100)
self.icdDataView.setColumnWidth(3, 100)
hdr = self.icdDataView.horizontalHeader()
#hdr.setSectionResizeMode(1, QHeaderView.ResizeToContents)
hdr.setSectionResizeMode(2, QHeaderView.Stretch)
#hdr.setSectionResizeMode(3, QHeaderView.ResizeToContents)
关于如何实现的任何建议?
解决方案
找到了答案:
self.icdDataView.setModel(mdl)
self.icdDataView.setColumnHidden(0, True)
self.icdDataView.horizontalHeader().setStretchLastSection(False)
self.icdDataView.setColumnWidth(1, 100)
self.icdDataView.setColumnWidth(3, 100)
self.icdDataView.horizontalHeader().setSectionResizeMode(2, QHeaderView.Stretch)
self.icdDataView.selectRow(0)