![]() |
|
|
![]()
|
|
| Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Всем привет!
Расскажите пожалуйста, как сделать диалог динамически изменяемого размера? Мне нужно сделать диалог с вертикальным layout-ом и динамически добавлять в него виджеты, при этом я хочу что бы размер диалога сам бы менялся. Как такое можно реализовать? Заранее спасибо! |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
пример черкнуть не могу - собирается QT 4.6 как раз
но алгоритм набросать могу: 1. по какому-то событию создаем виджет 2. определяем его размер(height ) 3. увеличиваем(тупо mainWidget.setHeigth(mainWidget->heigth() + newWidget->heigth()) или заюзать Animation API) размер(height) родителя на высоту нового виджета 4. добавляем новый виджет как-то так Это сообщение отредактировал(а) chaos - 9.12.2009, 15:07 |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Очень похоже на эту тему.
|
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
SABROG, ага!
Только например в данном случае ничего даже делать не придется: 1. создаем форму на базе QWidget. кидаем на нее кнопку, вертикальный спейсер и устанавливаем для формы вертикальный лайаут 2. на кнопку вешаем слот
вот и все ЗЫ форму сделать в дизайнере минимально допустимых размеров |
|||
|
||||
| Elfet |
|
||||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Что-то я не очень понял как это сделать? Если ничего делать не надо и ничего не работает?
Как такое сделать на QDialog? Добавлено через 4 минуты и 56 секунд
Добавлено через 10 минут и 7 секунд Ааа , не, всё заработало! Всем спасибо! Только непойму как при этом запретить пользователю менять размер окна? |
||||
|
|||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
тут у мну пробел в знаниях. я обычно когда хочу запретить изменение размеров, делаю следующее: в дизайнере minimumSize & maximumSize делаю одинаковыми Это сообщение отредактировал(а) chaos - 10.12.2009, 08:07 |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Такие методы есть:
QLayout::setSizeConstraint(QLayout::SetFixedSize); void QWidget::setFixedSize ( const QSize & s ) |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
угу. сенкс. возьму на заметку |
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, 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. |