PyQt5 QTreeWidget 列宽

PyQt5 QTreeWidget column width

我在使用 QTreeWidget 设置列宽时遇到问题。代码片段如下:

categories = QTreeWidget(my_widget)
categories.setColumnCount(2)
categories.setHeaderLabels(['Objects', 'Count'])
categories.currentItemChanged.connect(categoriesChanged)
vbox.addWidget(categories)
categories.setColumnWidth(1,66)

最后一行好像和我预期的不一样。我想要的是最右边的列比左边的列窄得多。

通过拖动 header 中的分隔符,我可以成功拖动列以提供所需的相对宽度,然后通过检查 categories.columnWidth 属性,我可以看到宽度已更改,但我似乎无法以编程方式明确设置列宽。

谢谢,

斯图尔特

问了几句,终于有了答案。

不能设置最右边列的宽度,因为它被拉伸以满足宽度的最小宽度。相反,左列可以设置其大小。我发现这导致两列的组合宽度超过了小部件的宽度,因此在小部件的底部出现了一个滚动条。要摆脱这种情况,可以将右侧的列宽设置为较小的宽度。

希望其他人觉得这有用。