Аналог Align alClient в Qt Gui Application
В свое время я много программировал в C++ Builder 6. Но потом перешел на Qt. И если пользуешься этой системой, то не видишь свойств alClient по расширению компонент на всё окно. В литературе предлагают использовать Layout, но при добавлении соответствующих компонент всё растягивается, но только в не растягиваемых Layout. Как быть?
Использую Qt Creator 2.7.0 и Qt 5.0.1.
Итак создаем Qt Gui Application
:
Далее в окнах или все по умолчанию оставляете (если ничего не знаете) или меняйте на то, что вам нужно.
Перейдите на форму:
Добавьте какие-нибудь компоненты. Например, pushButton
и textEdit
:
Теперь щелкните где-нибудь на форме правой кнопкой и выберете Lay out
→ Lay out Vertically
:
Можно выбрать любой вариант, который вам нравится:
Всё! Теперь все элементы расширены до общего окна. К тому же будут изменять свои размеры при изменении окна:
Кстати, отменить такую привязку можно в том же меню в виде подменю Break Layout
.
А вот какой тут аналог TPanel
? Используйте для этого Frame
:
Но, даже если вы добавите что-нибудь туда, то при использовании Layout
все пойдет наперекосяк:
Для этого поменяйте у Frame
свойство минимальной высоты или ширины (в зависимости от случая):
И все заработает:
Тэги:
- Qt
- C++ Builder
- Qt Gui
Категории:
- blog
- it
- programming
В свое время я много программировал в C++ Builder 6. Но потом перешел на Qt. И если пользуешься этой системой, то не видишь свойств alClient по расширению компонент на всё окно. В литературе предлагают использовать Layout, но при добавлении соответствующих компонент всё растягивается, но только в не растягиваемых Layout. Как быть?
В свое время я много программировал в C++ Builder 6. Но потом перешел на Qt. И если пользуешься этой системой, то не видишь свойств alClient по расширению компонент на всё окно. В литературе предлагают использовать Layout, но при добавлении соответствующих компонент всё растягивается, но только в не растягиваемых Layout. Как быть?