Как растянуть столбцы в qtableView чтобы они заняли все поле виджета вне зависимости от контекста
Как растянуть столбцы в qtableView чтобы они заняли все поле виджета вне зависимости от контекста?
Еще охота автоматическое выравнивание при перемотки.
Версия qt 4.7.8
Ответы (2 шт):
Автор решения: Alexander Chernin
→ Ссылка
Для Qt5+ воспользуйтесь методом QHeaderView::setSectionResizeMode() с аргументом растяжки QHeaderView::Stretch:
qtableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
Для старых версий QHeaderView::setResizeMode(QHeaderView::Stretch);
Автор решения: Sergey Tatarincev
→ Ссылка
ui->table->horizontalHeader()->setStretchLastSection(true); // растянуть последнюю секцию (это свойство можно задать и просто в дизайнере)
ui->table->horizontalHeader()->setSectionResizeMode(2, QHeaderView::Stretch); // растянуть конкретную секцию
также можно растянуть и последнюю запись вертикально:
ui->table->verticalHeader()->setStretchLastSection(true);
при этом растяжение конкретной секции можно устанавливать только после того как таблица заполнена данными (иначе у нее будет отсутствовать horizontalHeader что приведет к исключению)