Макет Qt не расширяется

У меня есть виджет Qt с рамкой, содержащей остальные виджеты.

Я хочу, чтобы один из виджетов расширялся при максимальном увеличении окна, поэтому я установил максимальное значение для остальных.

Но он будет расширяться только в том случае, если я установлю макет сетки для фрейма, что испортит место виджетов.

Как я могу это решить?


person SamuelNLP    schedule 21.03.2013    source источник
comment
Я настоятельно рекомендую использовать макеты. Есть несколько случаев, когда они могут быть неприемлемыми, но это один виджет из 100.   -  person Frank Osterfeld    schedule 21.03.2013


Ответы (1)


Используете ли вы какой-либо макет? Политика размера работает только в том случае, если у родителя установлен макет.

Вы можете использовать комбинацию различных макетов для получения желаемого вида, в противном случае вам придется вычислять размер «расширяющегося виджета» самостоятельно в методе события изменения размера родителя.

person romaingz    schedule 21.03.2013
comment
Что вы имеете в виду под расчетом размера? - person SamuelNLP; 21.03.2013
comment
Предполагая, что вы не можете использовать макеты, вам нужно переопределить resizeEvent() в родительском QWidget и установить размер расширяемого виджета на: размер родительского виджета - сумма размеров нерасширяемых виджетов. - person romaingz; 21.03.2013