crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> менеджер компоновки
vjkjljq
  опции профиля:
сообщение 14.10.2014, 14:37
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 14.10.2014
Пользователь №: 4248

Спасибо сказали: 0 раз(а)




Репутация:   0  


есть 4 виджета, и один родитель, задача выравнить 3 виджета на родители(4виджет для сети - не используется):
1 очень много читал
2 смотрел примеры
3 понял одно:автоматически выравнивание выиджетов будет только в том случае, если родительский виджет содержит
только однотипные виджеты, например, все Button(кнопки) или qtextedit; в случае разнотипных виджетов, например . QLCDNumber и
QtLineEdit, применять только - qgridlayout или выравнимать в ручную(я не пользуюсь designer)
Прошу мочь, - фото выставил, могу выствавить проект(он еще сырой), все просто - реализовать автоматическое выравнивание, написать код ,
и прошу объяснить почему у меня не получилось: комбинаторика имела очень широкие варианты,
может нужно было в каждом из 3 сделать одинаковый тип компоновки? или сами выджеты разработать с одинаковыми типами: только qtextline.
или только qtextedit? Спасибо!

Прошу прощения, не совсем удобный интерфейс к форуму, - немогу загрузить проект rar.Подскажи как это сделать?
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
vjkjljq
  опции профиля:
сообщение 14.10.2014, 15:48
Сообщение #2


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 14.10.2014
Пользователь №: 4248

Спасибо сказали: 0 раз(а)




Репутация:   0  


кажется сайт мертв,,,,,,,,,
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 14.10.2014, 17:36
Сообщение #3


Старейший участник
****

Группа: Участник
Сообщений: 600
Регистрация: 7.7.2010
Из: Санкт-Петербург
Пользователь №: 1866

Спасибо сказали: 94 раз(а)




Репутация:   12  


Цитата(vjkjljq @ 14.10.2014, 15:37) *
есть 4 виджета, и один родитель, задача выравнить 3 виджета на родители(4виджет для сети - не используется):
1 очень много читал
2 смотрел примеры
3 понял одно:автоматически выравнивание выиджетов будет только в том случае, если родительский виджет содержит
только однотипные виджеты, например, все Button(кнопки) или qtextedit; в случае разнотипных виджетов, например . QLCDNumber и
QtLineEdit, применять только - qgridlayout или выравнимать в ручную(я не пользуюсь designer)
Прошу мочь, - фото выставил, могу выствавить проект(он еще сырой), все просто - реализовать автоматическое выравнивание, написать код ,
и прошу объяснить почему у меня не получилось: комбинаторика имела очень широкие варианты,
может нужно было в каждом из 3 сделать одинаковый тип компоновки? или сами выджеты разработать с одинаковыми типами: только qtextline.
или только qtextedit? Спасибо!

Прошу прощения, не совсем удобный интерфейс к форуму, - немогу загрузить проект rar.Подскажи как это сделать?


Не совсем понятно, что нужно сделать, если сделать так чтобы виджеты, которые на картинке выделены в группы и кнопки те что внизу, по центру внизу были, то тут все просто.
QWidget* pParentWidget = ....
QWidget* pWidgetChild1 = ....
QWidget* pWidgetChild2 = ....
QWidget* pWidgetChild3 = ....
QButton* pButton1 = ...
QButton* pButton2 = ...
QGridLayout* pGrid = new QGridLayout(pParentWidget);
pGrid->addWidget(pWidgetChild1, 0, 0);
pGrid->addWidget(pWidgetChild2, 0, 1);
pGrid->addWidget(pWidgetChild1, 0, 2);
QHBoxLayout* pButtonsLayout = new QHBoxLayout;
pButtonsLayout->addWidget(pButton1);
pButtonsLayout->addWidget(pButton2);
pGrid->addItem(QSpacerItem(0, 0, QSizePolicy::Preferred, QSizePolicy::Maximum), 0, 0);
pGrid->addLayout(pButtonsLayout);
pGrid->addItem(QSpacerItem(0, 0, QSizePolicy::Preferred, QSizePolicy::Maximum), 0, 2);


В дизайнере это делается гораздо проще.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
lanz
  опции профиля:
сообщение 14.10.2014, 18:13
Сообщение #4


Старейший участник
****

Группа: Участник
Сообщений: 690
Регистрация: 28.12.2012
Пользователь №: 3660

Спасибо сказали: 113 раз(а)




Репутация:   8  


Цитата
понял одно:автоматически выравнивание выиджетов будет только в том случае, если родительский виджет содержит
только однотипные виджеты, например, все Button(кнопки) или qtextedit;

Это не так.

Присмотритесь к QV/HBoxLayout.
http://qt-project.org/doc/qt-4.8/qvboxlayout.html

Цитата
кажется сайт мертв,,,,,,,,,

Присоединяйтесь, помогайте :lol:

Сообщение отредактировал lanz - 14.10.2014, 18:16
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 18.10.2014, 17:57
Сообщение #5


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


vjkjljq, что подразумевается под выравниванием?
На приведённых снимках видны "вполне ровные" виджеты, это то, что должно получиться?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 15:20