Russian Qt Forum
Май 21, 2024, 18:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Виджет верхнего уровня.  (Прочитано 3007 раз)
Yegor
Гость
« : Январь 06, 2010, 20:21 »

Здравствуйте!
У меня есть главное диалоговое окно. На нем разбросаны куча виджетов. Я хочу по нажатию кнопки чтобы один виджет растягивался на все диалоговое окно. И было только этот один виджет виден, а остальные спрятались. На деле, когда я запускаю программу и расстягиваю один виджет на все диалоговое окно, то остальные виджеты не прячутся, а рисуются поверх моего виджета. Даже если я для них делаю ->hide(), то они все равно появляются поверх. Как сделать свой виджет, чтобы он рисовался поверх всех остальный виджетов? Чтобы остальные прятались за ним? Укажите, пожалуйста, где копать.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Январь 06, 2010, 20:40 »

А стоит ли так делать? Если только один виджет будет виден за раз, то и создавай только его, когда станет не нужен удалишь, создашь и отобразишь другой
Записан

Юра.
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Январь 06, 2010, 20:45 »

Здравствуйте!
У меня есть главное диалоговое окно. На нем разбросаны куча виджетов. Я хочу по нажатию кнопки чтобы один виджет растягивался на все диалоговое окно. И было только этот один виджет виден, а остальные спрятались. На деле, когда я запускаю программу и расстягиваю один виджет на все диалоговое окно, то остальные виджеты не прячутся, а рисуются поверх моего виджета. Даже если я для них делаю ->hide(), то они все равно появляются поверх. Как сделать свой виджет, чтобы он рисовался поверх всех остальный виджетов? Чтобы остальные прятались за ним? Укажите, пожалуйста, где копать.
Если Вы хотите по нажатию кнопки "что-то убрать а что-то показать/растянуть", то прямой путь использовать QStackedLayout/QStackedWidget. Использовать hide() тоже можно но более хлопотно и оно должно быть вызвано ДО растяжки.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.048 секунд. Запросов: 22.