LINUX.ORG.RU

Qt layout, компановка скрытых виджетов

 


0

1

Столкнулся с проблемой, не знаю как решить. Подскажите что-нибудь?

Компаную виджеты, из которых один скрыт, он появляется позже, во время вылолнения программы. Компаную в HBox. Проблема заключается в том, что при появлении виджета, остальные сдвигаются. Можно ли как-то заранее выделить место под скрытый виджет? Или какой-нибудь расширитель вставить, чтобы сдвигался только он, тихо и незаметно, не беспокоя соседние виджеты?

★★★★★

вставь stackedWidget и сделай две страницы. на одной пусто а на второй твой виджет. =)

MikeDM ★★★★★
()
Ответ на: комментарий от Stil

Это по работе нужно. Спасибо, попробую :)

hibou ★★★★★
() автор топика

spacer ? настрой size policy у других виджетов

jo_b1ack ★★★★★
()

Еще можно попробовать QBoxLayout::addStretch, правда не знаю, как это будет выглядеть при скрытом виджете...

solovey ★★
()
Ответ на: комментарий от solovey

Уже попробовал. Если просто добавить, ничего не меняет. Тут надо наверное отслеживать показ и скрытие, и в зависимости от этого добавлять этот Stretch. Так еще не пробовал, но собираюсь попробовать.

hibou ★★★★★
() автор топика
Ответ на: комментарий от MikeDM

Понимаешь, у меня текстовое поле и картинка справа от него. Картинка показывается при неправильном вводе. Думаешь, stackedWidget подойдет?

hibou ★★★★★
() автор топика
Ответ на: комментарий от hibou

stackedWidget это спец виджет для размещения на нем страниц. сделай две страницы, на одной ничего не размещай, а на второй свою картинку. если надо картинку показать то делаешь активной вторую страницу.

MikeDM ★★★★★
()
Ответ на: комментарий от hibou

а почему костыльно? Этот виджет для страниц и предназначен =)

MikeDM ★★★★★
()
Последнее исправление: MikeDM (всего исправлений: 1)

Можно ещё вместо HBox попробовать QGridLayout тогда, по идее, ничего прыгать не должно, если при компоновке правильно выставить относительное местоположение виджетов

Sakura
()
Ответ на: комментарий от hibou

А что тебе мешает задать фиксироанный размер у того виджита, который картинку показывает, и просто менять показываемую картинку?

anonymous
()
Ответ на: комментарий от hibou

Возникает вопрос, как вы показываете картинку?

В любом случае напрашивается такое решение: не скрывать/показывать виджет с картинкой, а показывать прозрачную/необходимую картинку.

trex6 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.