Russian Qt Forum

Qt => Вопросы новичков => Тема начата: YvenTitan от Сентябрь 22, 2016, 18:30



Название: Растянуть окно по содержимому
Отправлено: YvenTitan от Сентябрь 22, 2016, 18:30
Еще раз здравствуйте
Я в QDialog помещаю достаточно широкий QTableWidget, на полэкрана, через QVBoxLayout. При этом хочу, чтобы QDialog также растянулся на полэкрана. У меня появляется на QTableWidget полоса прокрутки.
Подскажите пожалуйста, как сделать, чтобы он QDialog растянулся по содержимому
adjustSize() не помогает
Хотелось бы обойтись без setGeometry


Название: Re: Растянуть окно по содержимому
Отправлено: GreatSnake от Сентябрь 23, 2016, 14:23
Хотелось бы обойтись без setGeometry
Не получится, т.к. в QTableView::sizeHint() не учитывается его содержимое.


Название: Re: Растянуть окно по содержимому
Отправлено: YvenTitan от Сентябрь 23, 2016, 14:34
Спасибо


Название: Re: Растянуть окно по содержимому
Отправлено: gil9red от Сентябрь 23, 2016, 14:36
Можно самому подсчитать :)

Ширина = сумма (table->horizontalHeader()->sectionSize(i))
Ширина += table->verticalHeader()->width()
Ширина += table->verticalScrollBar()->width() // Если есть
Ширина += 10 // добавим немного пикселей

// У таблицы теперь не будет горизонтального ползунка -- ширина найдена
table->setFixedWidth(Ширина)