![]() |
|
|
![]()
|
|
| kuvshinka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
Скажите пожалуйста каким образом программно (или вручную) можно расположить 4, допустим frame-a, таким образом, как показано во вложенном архиве программы (фреймы должны занимать всю форму целиком с указанным их взаимным расположением) и чтобы при изменении размеров формы соответствующим образом менялись бы и размеры фреймов при сохранении их заданной ориентации. Пытаюсь использовать в этих целях QGridLayout – что-то не получается (см. архив)
Присоединённый файл ( Кол-во скачиваний: 7 )
pril1.rar 180,97 Kb |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
Создай HBoxLayout, на него пихни правый виджет, а слева от него помести VBoxLayout, в котором будут 3 левых виджета.
Затем у формы задай VBoxLayout. При желании можешь кнопку разместить на HBoxLayout со спейсером. |
|||
|
||||
| kuvshinka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
что за VBoxLayoutу формы?
Добавлено @ 23:47 пож-та исп-ие Layout -ов доделайте в архиве (его см. выше)....+ мне надо сделать изменение размеров фреймов при изменении размеров формы... Это сообщение отредактировал(а) kuvshinka - 18.2.2010, 23:51 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
kuvshinka, я вообще-то все сказал. В документации ты легко найдешь описание классов QVBoxLayout и QHBoxLayout.
Присоединённый файл ( Кол-во скачиваний: 4 )
mainwindow.zip 0,84 Kb |
|||
|
||||
| kuvshinka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
bsa: спасибо за архив но хотелось бы самой понять принцип работы с этими лэйаутами:
1. Кладу HBoxLayout на форму….на него – фрейм4, который сразу занимает всю область (почему?) HBoxLayout-а и становится невозможным передвижение и изменение размеров HBoxLayout-а ???…. 2. Чуть левее HBoxLayout –а кладу VBoxLayout, а на него – фрейм1, который тоже занимает всю область данного Vлэйаута (!!!) и тогда при добавлении следующего фрейма2 на этот жеVBoxLayout получается, что этот фрейм2 добавляется на фрейм1, а не на VBoxLayout…Как быть? Это сообщение отредактировал(а) kuvshinka - 21.2.2010, 01:01 |
|||
|
||||
| kuvshinka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
ну подскажите пож-та как на один лэйаут (VBoxLayout) поместить несколько фреймов? (а то при добавлении первого фрейма он занимает всю область лэйаута и изменить его (фрейма) размеры не получается)
почему фрейм занимает сразу всю площадь лэйаута, а например кнопка, чекбокс или эдит - нет? Это сообщение отредактировал(а) kuvshinka - 21.2.2010, 18:19 |
|||
|
||||
| NewDima |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
kuvshinka, у кнопки, чекбока и у эдита установлен фиксированный вертикальный размер по умолчанию. Ничего страшного, что фрейм расползается на всю область лэйаута, нужно перетащить новый объект примерно на границу брошенного фрэйма и лэйаута-владельца, там появится полосочка
|
|||
|
||||
| Peter |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 28.7.2003 Где: Ставрополь Репутация: нет Всего: 1 |
Года два вплотную занимался программированием с использованием Qt, но так и не навострился работать с дизайнером. Редактировал файлы .ui вручную - вставлял объекты в VBox, Layout.
-------------------- всё, что делаете, делайте от души, как для Господа (Послание апостола Павла колоссянам, 3:23). |
|||
|
||||
| kuvshinka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
NewDima: сразу и не поймешь - какая-то полосочка...и почему так сделано? получается далеко не с первого раза (и все равно толком технология непонятна - тыкал, тыкал и когда-то получилось)...а после добавления например двух фреймов на вертикальный лэйаут как можно поменять размеры этих фреймов? у меня получается, что каждый фрейм занимает ровно половину высоты лэйаута...хотелось бы это как-то изменить...свойство geometry поменять нельзя...
|
|||
|
||||
| kuvshinka |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 386 Регистрация: 27.4.2008 Репутация: нет Всего: нет |
так как же можно изменить размеры фреймов, помещенных на Vertical Layout (см. предыдущее сообщение в данной теме)?
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 24 Всего: 196 |
kuvshinka, в данном случае нужно манипулировать "лояльностью" к изменению размеров (см. SizePolicy stretch factor).
Это сообщение отредактировал(а) bsa - 24.2.2010, 17:10 |
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |