Подтвердить что ты не робот

Среднее пространство заполнения столбца QTreeView вместо последнего столбца

Как это сделать:

middle column fill space

Я уже пробовал этот путь:

view->header()->setResizeMode(INDEX_COLUMN_SKU, QHeaderView::Interactive);
view->header()->setResizeMode(INDEX_COLUMN_NAME, QHeaderView::Stretch);
view->header()->setResizeMode(INDEX_COLUMN_QUANTITY, QHeaderView::Interactive);
view->header()->setResizeMode(INDEX_COLUMN_PRICE, QHeaderView::Interactive);

но не работает.

4b9b3361

Ответ 1

Вы помнили to view->header()->setStretchLastSection(false)?

Вот несколько примеров:

Поведение по умолчанию

Default behavior

Просто отключите растягивание в последнем столбце:

treeView->header()->setStretchLastSection(false);

Stretch_Disabled

Оба атрибута объединены:

treeView->header()->setStretchLastSection(false);
treeView->header()->setResizeMode(1, QHeaderView::Stretch);   

Начиная с QT5 и далее:

treeView->header()->setStretchLastSection(false);
treeView->header()->setSectionResizeMode(1, QHeaderView::Stretch); //! qt5 api change 

Stretch_Disabled+Resizable_Second_Col