Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: burunduk от Ноября 23, 2005, 18:13



Название: QScrollArea: как заставить внутренний виджет быть по центру?
Отправлено: burunduk от Ноября 23, 2005, 18:13
Когда уменьшаю размер окна QScrollArea всё пучком - появляются прокрутки. Когда увеличиваю - внутренний виджет позиционируется в левом верхнем углу. Вроде тоже пучком, но я хочу по центру !  Как тут лучше быть ?


Название: QScrollArea: как заставить внутренний виджет быть по центру?
Отправлено: zlatko от Ноября 23, 2005, 18:19
ну как..если размер области прокрутки больше чем размер внутренего виджета делай move() в нужную ранее вычесленую позицию...по крайней мере я когдато так делал и уменя получалося


Название: QScrollArea: как заставить внутренний виджет быть по центру?
Отправлено: burunduk от Ноября 24, 2005, 10:55
ничего у меня так и не получилось :(
move вызывает жуткое дергание экрана, когда например на одной стороне есть полоса прокрутки, а другая сторона шире внутреннего виджета.
да и у QScrollArea когда перекрывал resizeEvent, чтобы принудительно заставить внутренний виджет перерисовываться, полосы прокрутки переставали вообще рисоваться.


Название: QScrollArea: как заставить внутренний виджет быть по центру?
Отправлено: Arlekino от Апреля 17, 2006, 16:34
нужно сделать:
wd->setAlignment(Qt::AlignCenter);
где wd - внутреннij виджет.