我有一个主窗口,Qtreewidget(有3列)作为中央小部件。我想保持第一列和第二列的大小固定,但第二列的大小应该等于qtreewidget的大小减去其他两列的大小。由于主窗口(也可以是treewidget)的大小可以更改,如何保持第二列的大小也在变化?
使用header()
的QTreeWidget
funtion,你可以获得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.