![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
RDron |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 15.6.2008 Пользователь №: 202 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Здравствуйте.
Проблема вот в чём: есть программа с табами, в конструкторе главного окна в одном табе часть виджетов скрывается (они показываеютя только группами), но пока не перейдешь на этот таб изменить размер окна (уменьшить его) не получается. В этом табе размер выставлен для отображения всех виджетов, а не только тех, что отображаются. Даже если вызывать repaint и после этого resize( minimumSizeHint() ) размер не изменится (пока не перейдёшь на тот таб). Я так понял, что пока виджет не виден Qt не производит с ним действий по вычислению его размеров перерисовке. Единственный выход который я нашел это при старте быстро перейти на нужный таб изменить размер окна и перейти обратно на первый таб, но это вызывает "мигание"... Как сделать перерисовку под нужные размеры не показывая виджет, который нужно перерисовать? |
|
|
![]() |
void* |
![]()
Сообщение
#2
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
переопредели функцию virtual QSize sizeHint();
example:
также возможно тебе понадобится функция setSizePolicy(QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical) Сообщение отредактировал void* - 15.6.2008, 21:50 |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 19:09 |