crossplatform.ru

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

porex
  опции профиля:
сообщение 15.12.2011, 14:21
Сообщение #1


Студент
*

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

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




Репутация:   0  


Доброго времени суток!
Есть проект с несколькими формами, иерархия такая:
Цитата
MainWindow (QWidget)
>>>|
>>>|----ConfigForm(QWidget)
>>>>>>>>|
>>>>>>>>|----PatternDialog(QDialog)

Первая форма создается и разворачивается на весь экран:
MainWindow w;
w.setWindowFlags(Qt::FramelessWindowHint);
w.showFullScreen();

Вторая форма создается динамически по нажатию на кнопку:
ConfigForm *Config=new ConfigForm(NULL);
Config->setAttribute(Qt::WA_DeleteOnClose,true);
Config->setWindowFlags(/*Qt::X11BypassWindowManagerHint|*/Qt::FramelessWindowHint);
//Config->setWindowModality(Qt::WindowModal);
//Config->show();
Config->showFullScreen();
/*Config->raise();
Config->activateWindow();*/

А PatternDialog так:
TPatternDialog PatternDialog(this);
//PatternDialog.setAttribute(Qt::WA_DeleteOnClose,true);
PatternDialog.setWindowModality(Qt::WindowModal);
//PatternDialog.setWindowFlags(Qt::WindowStaysOnTopHint);
PatternDialog.show();
PatternDialog.raise();
PatternDialog.activateWindow();
PatternDialog.exec();

Так вот если при создании ConfigForm в качестве родителя указать MainWindow, то форма не разворачивается на весь экран, а если передать NULL, то ConfigForm разворачивается на весь экран, но при создании PatternDialog на передний план вылазит MainWindow.
Как с этим бороться? Да, забыл, пишу под Ubuntu.

Сообщение отредактировал porex - 17.12.2011, 16:21
Прикрепленные файлы
Прикрепленный файл  Test_.tar.gz ( 5.39 килобайт ) Кол-во скачиваний: 431
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 6.5.2025, 21:04