Название: QDialog + QScrollArea = lubofff. how get it Отправлено: thechicho от Ноября 13, 2011, 23:05 Код
динамически будут добавляться элементы в QGridLayout /* layout в коде выше */. надо, чтобы диалог подстраивался под их размер. проблема в том, что элементов может быть вставлено довольно много. соответственно они влезать на экран не будут. как сделать, чтоб, когда элементы не будут влезать в окно, появились полосы прокрутки и элементы разместились в QScrollArea. в коде выше задается (не мной) фиксированная ширина (высота может изменяться). я не догоняю, как сделать, чтобы подстраивалось под контент до момента, пока не заполнено все окно, затем нужен scrollbar. хелп. Название: Re: QDialog + QScrollArea = lubofff. how get it Отправлено: grin от Ноября 14, 2011, 00:02 Я так понимаю тебе нужно примерно следующее:
Код
Конкретнее тут: http://doc.qt.nokia.com/latest/qscrollarea.html#widgetResizable-prop Название: Re: QDialog + QScrollArea = lubofff. how get it Отправлено: thechicho от Ноября 14, 2011, 12:11 я не понимаю!
делаю scrollArea->setWidgetResizable(true); но не подстраивается под контент!!! как сделать, чтобы виджет растягивался под контент пока не заполнится все окно??? я уже несколько часов голову ломаю, хелп :( Название: Re: QDialog + QScrollArea = lubofff. how get it Отправлено: thechicho от Ноября 14, 2011, 12:31 Код
LAYOUT SIZEHINT: QSize(867, 456) WIDGET SIZE: QSize(100, 30) WIDGET SIZEHINT: QSize(867, 456) SCROLLAREA SIZE DO: QSize(100, 30) SCROLLAREA SIZEHINT DO: QSize(158, 106) SCROLL AREA DO MINIMUM: QSize(0, 0) SCROLL AREA DO MAXIMUM: QSize(16777215, 16777215) SCROLL AREA POSLE MINIMUM: QSize(0, 0) SCROLL AREA POSLE MAXIMUM: QSize(16777215, 16777215) SCROLLAREA SIZE POSLE: QSize(100, 30) SCROLLAREA SIZEHINT POSLE: QSize(468, 312) WINDOW SIZE: QSize(100, 30) WINDOW SIZEHINT: QSize(468, 312) QDialog заменил на QMainWindow. нужно чтобы размер window подстраивался под контент, а он получается фиксированным!!! (WINDOW SIZEHINT: QSize(468, 312) ) почему? надо, чтобы LAYOUT SIZEHINT: QSize(867, 456) = WINDOW SIZEHINT: QSize(468, 312) как это можно добиться?! Название: Re: QDialog + QScrollArea = lubofff. how get it Отправлено: thechicho от Ноября 14, 2011, 15:27 Код
|