Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Deiv от Ноября 17, 2004, 11:42



Название: Просветите пожалста ...
Отправлено: Deiv от Ноября 17, 2004, 11:42
Не то чтобы ман читать неохото, просто ... что-то не по глазам.

Раньше работал на билдере, там шлепаешь виджет на форму (или просто создаешь в программе) и прописываешь этому виджету "якоря". Для-чтобы-когда :D ресайз формы, изменялся и размер фиджетов на ней.
А как в Designer сделать аналогично? Какие свойсва у компанента используются для этого.

Решил простенький проект поковырять и на таком ... споткнулся. :roll:

ЗЫ: вот например в приложенном уюке(.ui) чего надо сделать чтобы они ресайзились?


Название: Просветите пожалста ...
Отправлено: Racheengel от Ноября 17, 2004, 11:51
для этого у тебя есть менеджеры компоновки. Другой подход (не похожий на якоря от Бормана). Это компоненты QLayout и наследованные от него.

В дизайнере есть тулбар с такими менеджерами. Политика компоновки может быть задана двумя способами:

1. Компоновка элементов ВНУТРИ какого-либо родительского (напр. внутри окна). Для этого надо кликнуть правой кнопкой по ОКНУ (не по его элементам!) и выбрать из меню подходяшее размещение (горизонтальное/вертикальное/решетка).

2. Компоновка выбранных элементов. Для этого выбираем мышой элементы, которые надо скомпоновать, далее из тулбара нужный пункт. При этом элементы объединяются в группу, которую можно рассматривать как единый объект для дальнейшего размещения.

Дополнительно для каждого виджета можно указать политику размера (QSizePolicy), но это уже отдельная тема.


Название: Просветите пожалста ...
Отправлено: Zmey от Ноября 17, 2004, 11:54
Надо в форме сделать Lay Out Horizontally.
Запускай Assistant. Там это доло хорошо описано. (c) Rainbow


Название: Просветите пожалста ...
Отправлено: Deiv от Ноября 18, 2004, 07:04
Всем спасибо, разобрался :-).