Qt - Как указать и сделать постоянным размер элемента в макете? - PullRequest
1 голос
/ 20 июля 2010

Скажем, есть QHBoxLayout и некоторые виджеты в нем. Как задать ширину и высоту виджета в макете, чтобы при изменении размера виджета, содержащего макет, заданная ширина и высота оставались постоянными?

Ответы [ 2 ]

4 голосов
/ 20 июля 2010

Вы можете использовать

void QWidget::setFixedSize ( int w, int h )

, который устанавливает ширину виджета в w и высоту в h. Это сделает размер конкретного виджета фиксированным при изменении размера окна.

Также вы можете использовать комбинацию этих функций,

void QWidget::setFixedHeight ( int h )

, а также

void QWidget::setFixedWidth ( int w )

В зависимости от того, что вам нужно. Надеюсь, это поможет.

0 голосов
/ 20 июля 2010

Один (простой) способ сделать это - использовать функции QWidget :: setMinimumSize и QWidget :: setMaximumSize для установки одинакового минимального и максимального размеров. Это предотвратит расширение и сжатие виджета. Э.Г.

widget->setMinimumSize( 200, 100 );
widget->setMaximumSize( 200, 100 );

Конечно, вы можете также установить эти значения в QtDesigner.

...