PyQt5 QTreeWidget列宽

时间:2017-09-22 03:41:08

标签: qt pyqt pyqt5 qtreewidget

我遇到了使用QTreeWidget设置列宽的麻烦。代码段如下:

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

看起来最后一行并没有像我预期的那样。我想要的是最右边的列比左列窄得多。

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

三江源,

斯图尔特

1 个答案:

答案 0 :(得分:0)

在询问了一些之后,我终于得到了答案。

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

希望其他人觉得这很有用。