Название: Квадратный виджет ??? Отправлено: SLiDER от Сентябрь 17, 2009, 22:10 Собственно как сделать сабж ??? Т.е. что бы при масштабировании виджет оставался квадратным. Перегрузка resizeEvent и последующий ресайз не помогают, так как после этого лэйаут, на котором лежит виджет, сходит с ума и творит чёрте-чё, и даже updateGeometry ему тут не поможет. Есть у кого мысли ??? Гугль говорит что единственный способ помочь моему горю, это сабклассинг QLayout-а, однако у меня какая-то алергия на эту идею.
Название: Re: Квадратный виджет ??? Отправлено: Alp от Сентябрь 17, 2009, 23:23 А что творит лайаут при ресайзе? А у меня ничего не творит:
Код
Код
Название: Re: Квадратный виджет ??? Отправлено: MoPDoBoPoT от Сентябрь 18, 2009, 15:44 У тебя частный случай этого примера: Создание виджета с высотой, зависящей от ширины (http://www.crossplatform.ru/?q=node/227)
Название: Re: Квадратный виджет ??? Отправлено: SLiDER от Сентябрь 18, 2009, 23:46 А что творит лайаут при ресайзе? А у меня ничего не творит Ну, может я конечно превередничаю но вот эти эффекты я считаю не нормальными -> Название: Re: Квадратный виджет ??? Отправлено: SLiDER от Сентябрь 18, 2009, 23:50 У тебя частный случай этого примера: Создание виджета с высотой, зависящей от ширины (http://www.crossplatform.ru/?q=node/227) Я видел эту статью, и может у меня руки не из того места растут, но мне неудалось на основе heightForWidth решить мою проблему, результат получается похлеще чем с перегрузкой resizeEvent. Собственно вот прилагаю проекты, если кому удасться сделать нормальный квадратный виджет, может построить себе памятник :) Название: Re: Квадратный виджет ??? Отправлено: Alp от Сентябрь 19, 2009, 00:05 А что творит лайаут при ресайзе? А у меня ничего не творит Ну, может я конечно превередничаю но вот эти эффекты я считаю не нормальными -> Со скринщотами понятнее не стало. Рабочий пример кода можешь выложить? Что будет если мой пример вставить в ресайзЭвент твоего контрола? Не понял что за лайоут у тебя используется (на первом рисунке грид что ли? а на втором? такое ощущение что другой). Ну вообще какое поведение виджета ожидается? Лучше код. Название: Re: Квадратный виджет ??? Отправлено: SLiDER от Сентябрь 19, 2009, 00:18 Со скринщотами понятнее не стало. Рабочий пример кода можешь выложить? Что будет если мой пример вставить в ресайзЭвент твоего контрола? Не понял что за лайоут у тебя используется (на первом рисунке грид что ли? а на втором? такое ощущение что другой). Ну вообще какое поведение виджета ожидается? Лучше код. Код одним постом выше. Лэйоут обычный QHBoxLayout, а эффекты которые наблюдаются на скринах, происходят потому, что при ресайзе себя виджет ни как не сообщает об этом своему лэйауту, и тот в святом неведение выделяет под него столько места сколько ему нужно было бы если бы он сам не ресайзился, вот. |