Динамическое расширение ширины столбца в QTreeWidget

Используя PySide, я разрабатываю небольшое приложение. В своем приложении я использую QTreeWidget для отображения формы, подобной данным. Этот QTreeWidget имеет один столбец. Моя проблема заключается в том, что QTreeWidget не отображает горизонтальную полосу прокрутки, когда его элемент расширяется в горизонтальном направлении. У кого-нибудь есть идеи по этому вопросу?

Попробовав некоторые вещи, я заметил, что мне нужно динамически расширять ширину столбца. Является ли это возможным?

Примечание. Я пробовал setColumnWidth, он работает нормально. Но я хочу сделать это динамически.

заранее спасибо


person userx    schedule 11.04.2014    source источник
comment
Да и то и другое возможно. Вы читали документацию Qt?   -  person Dmitry Sazonov    schedule 11.04.2014
comment
@Dmitry спасибо за интерес. Я пытался, но, к сожалению, у меня не получилось. Можете ли вы дать мне какую-либо ссылку?   -  person userx    schedule 11.04.2014
comment
Нет успеха. Можно ли привести пример pyside?   -  person userx    schedule 11.04.2014


Ответы (2)


Вам необходимо изменить размер содержимого, а также отключить растянуть последний раздел:

    treewidget.header().setResizeMode(QtGui.QHeaderView.ResizeToContents)
    treewidget.header().setStretchLastSection(False)
person ekhumoro    schedule 11.04.2014
comment
treeview-›header()-›setResizeMode(QHeaderView::ResizeToContents); Работает отлично. Прохладный. Спасибо. - person Hareen Laks; 15.09.2015

В PySide2 вы можете использовать это:

header = self.treeWidget.header()
header.setSectionResizeMode(QtWidgets.QHeaderView.ResizeToContents)
header.setStretchLastSection(False)
header.setSectionResizeMode(5, QtWidgets.QHeaderView.Stretch)
person Rajiv Sharma    schedule 25.12.2018