如何保持QtreeWidget(超过2列)的第二列的大小是动态的?

问题描述 投票:1回答:1

我有一个主窗口,Qtreewidget(有3列)作为中央小部件。我想保持第一列和第二列的大小固定,但第二列的大小应该等于qtreewidget的大小减去其他两列的大小。由于主窗口(也可以是treewidget)的大小可以更改,如何保持第二列的大小也在变化?

c++ qt qtreewidget
1个回答
0
投票

使用header()QTreeWidgetfuntion,你可以获得QHeaderView对象。

在文档链接(https://doc.qt.io/qt-5/qtreeview.html#sizeHintForColumn)中,您注意到了

如果需要将给定列的宽度设置为固定值,请在视图的标题上调用QHeaderView :: resizeSection()。

void QHeaderView::resizeSection(int logicalIndex, int size)

所以粗略的代码可能是:

QHeaderView* headerView = treeWidget->header();
headerView->resizeSection(COLUMN_INDEX, FIXEDSIZE); //Calculate the required size and do this for required columns.
© www.soinside.com 2019 - 2024. All rights reserved.