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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Манипуляции с Виджетами.  (Прочитано 5430 раз)
OS2
Самовар
**
Offline Offline

Сообщений: 186



Просмотр профиля WWW
« : Октябрь 21, 2008, 11:43 »

Добрый день!
Столкнулся с такой проблемой: в окне, производном от QMainWindow, создается несколько виджетов (производных от QWidget), которые перекрывают друг друга. Вопрос в следующем: как вытащить самый нижний виджет поверх остальных?
Всем заранее спасибо!
« Последнее редактирование: Октябрь 21, 2008, 12:18 от OS2 » Записан
spirit
Гость
« Ответ #1 : Октябрь 21, 2008, 11:54 »

установить этому виджету флаг Qt::WindowStaysOnTopHint, только в ассистанте почитайте примечание.
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #2 : Октябрь 21, 2008, 11:55 »

QWidget::activateWindow(), QWidget::raise()

Если используеться MDI на основе QMdiArea, то QMdiArea::setActiveSubWindow(QMdiSubWindow *window); если на основе QWorkspace, то QWorkspace::setActiveWindow( QWidget * w )
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
OS2
Самовар
**
Offline Offline

Сообщений: 186



Просмотр профиля WWW
« Ответ #3 : Октябрь 21, 2008, 12:26 »

Не один из способов не помог. Окно не MDI.  Грустный
Записан
OS2
Самовар
**
Offline Offline

Сообщений: 186



Просмотр профиля WWW
« Ответ #4 : Октябрь 21, 2008, 13:10 »

Цитировать
нужному виджету сделай raise()
Я ж написал, что не один из способов не помог. Что странно, на 4.4.1 все работало отлично, а на 4.4.3 не хочет.
Цитировать
при чём тут окно?
Цитировать
Если используеться MDI на основе QMdiArea, то .....
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #5 : Октябрь 21, 2008, 17:07 »

Если в 4.4.1 точно работает, то закинь багу: http://trolltech.com/bugreport-form
Записан
SASA
Гость
« Ответ #6 : Октябрь 22, 2008, 19:40 »

void QWidget::stackUnder ( QWidget * w ) - работает в 4.4.3
Вывод создаём окно, суём под него нужное, удаляем первое.
Извращение, но может заработает.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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