Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: trenkinan от Май 01, 2010, 16:41



Название: автоматическое растягивание заголовков таблицы
Отправлено: trenkinan от Май 01, 2010, 16:41
Здравствуйте. Есть QTableView +  QSqlQueryModel. нужно сделать, чтобы при растягивании приложения на весь экран(максимизации) заголовки таблицы растяивались как раз по ширине экрана + края приложения. Сейчас при разворачивании приложения остается свободное место справа. Сильно не пинайте, пока нигде не нашел. Заранее спасибо


Название: Re: автоматическое растягивание заголовков таблицы
Отправлено: BRE от Май 01, 2010, 16:45
Посмотри на следующие методы:
QHeaderView * QTableView::horizontalHeader () const
void QHeaderView::setResizeMode ( int logicalIndex, ResizeMode mode )


Название: Re: автоматическое растягивание заголовков таблицы
Отправлено: garryHotDog от Май 01, 2010, 19:35
Код:
ui.tableWidget_stat->setColumnWidth(1,150);
// растягивающееся колонка
ui.tableWidget_stat->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
// фиксированная
ui.tableWidget_stat->horizontalHeader()->setResizeMode(1,QHeaderView::Fixed);


Название: Re: автоматическое растягивание заголовков таблицы
Отправлено: trenkinan от Май 03, 2010, 21:23
Всем спасибо. Но решил сделать иначе: просто прилепил крайний правый столбец к границе окна...то что нужно, сделал в настройках Designer


Название: Re: автоматическое растягивание заголовко
Отправлено: sindbad07 от Май 03, 2010, 21:39
А кто знает позволяет ли qt сделать так:
несколько колонок - фиксированного размера,
а несколько должны растягиваться в пропорции, например такой 50% и 50% оставшегося пространства, но не менее стольки-то пикселей? или я это уже черезчур загнул?


----------------------------------------------------------------

Кароче я так понял, что часть колонок надо делать fixed, остальные manual, дальше ловить сигнал об изменении размеров у таблицы и считать, менять размеры колонок самостоятельно.