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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt::ApplicationModal срабатывает только один раз  (Прочитано 5044 раз)
Silver_swift
Гость
« : Января 31, 2012, 10:17 »

Работаю с окошком унаследованным от QWidget. Если this->setWindowModality(Qt::ApplicationModal); вызвать в конструкторе, то окошко станет модальным. Если же вызывать эту функцию из любого другого места программы окно не становится модальным. Почему так?
Код:
    if (arg)
        this->setWindowModality(Qt::ApplicationModal);
    else
        this->setWindowModality(Qt::NonModal);
Записан
mutineer
Гость
« Ответ #1 : Января 31, 2012, 11:13 »

А секрет кроется в чтении документации
Цитировать
Changing this property while the window is visible has no effect; you must hide() the widget first, then show() it again.
Записан
Silver_swift
Гость
« Ответ #2 : Января 31, 2012, 13:55 »

Здорово, зарабоало, спасибо.

Но я вообще-то честно смотрел Qt Assistant  и это все что мне удалось найти:
Цитировать
Qt::ApplicationModal   2   The window is modal to the application and blocks input to all windows.
Раздел Qt Namespace. Версия 4.7.

Какую документацию вы читаете?
Записан
mutineer
Гость
« Ответ #3 : Января 31, 2012, 14:03 »

http://doc.crossplatform.ru/qt/4.7.x/qwidget.html#windowModality-prop

Ну либо в ассистанте дока по классу QWidget функции setWindowModality
Записан
Silver_swift
Гость
« Ответ #4 : Января 31, 2012, 14:34 »

Тоже читал, но не внимательно. Спасибо Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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