PDA

Показать полную графическую версию : Пропорциональное изменение размеров окна (на Qt)


PulSar.CE194694
06-04-2010, 19:11
Добрый день!
Есть проблема. Делаю программу на Qt4.6, в ней важно, чтобы размеры окна менялись пропорционально друг другу. Например, у меня есть окно с соотношением сторон 16:9. Я меняю, допустим, ширину окна, и хочу, чтобы и высота тоже поменялась согласно соотношению. Тоже и с высотой. Вот не знаю как это сделать. В справке никаких методов для этого не нашел. И как самому сделать, тоже без понятия. А если в справки и есть подобные функции, то не понятно как работают. Я подозреваю, что нужно использовать методы setHeight() и setWidth(). Помогите плиз, написать код для этого.

ЗЫ изменяю размеры главного окна.
Заранее Спасибо.

crashtuak
06-04-2010, 22:15
Вот план действий-при ресайзе, проверяем, насколько изменилась ширина\высота окна, и полученный результат прибавляем к другому параметру, тоесть нам надо будет отловить начало ресайза и его конец. И желательно запретить ресайз за угол, когда окно сразу растягивается по ширине и высоте.

PulSar.CE194694
06-04-2010, 22:26
Так да, алгоритм я себе представляю какой примерно нужен. Вопрос в том, как его написать в QtCreator))))

crashtuak
07-04-2010, 09:01
О, я не знаю:) Хотя, если вы пишете под windows, то можно стандартными средствами сделать. Могу рассказать как же именно:)

PulSar.CE194694
07-04-2010, 16:43
Если этот код будет работать из под Qt, готов с радостью выслушать! :)

crashtuak
07-04-2010, 17:46
А пишете из QtCreator"а? А в него включены заголовочные файлы типа "windows.h" и так далее? Просто в них описания нужных WinAPI функций... Ведь Qt без проблем встает на Visual Studio 2008, можно там все сделать...

PulSar.CE194694
07-04-2010, 23:32
Я WinAPI не знаю, не учил. Вот учил и учу Qt. Хотелось бы именно в Qt сделать. :)

PulSar.CE194694
09-04-2010, 23:01
Никто не знает как?




© OSzone.net 2001-2012