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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [Решено] Удалить окно при закрытии  (Прочитано 2792 раз)
Alex_C
Гость
« : Апреля 18, 2012, 15:59 »

Как правильно на Qt решить следующую задачу:
1. При закрывании окна оно должно удалиться. Что нужно для этого closeEvent указать?
2. При удалении нужно обнулить указатель на этот объект, чтоб при выборе меню для показа этого окна можно было проверить, создано оно или нет

Код:
    if(calcWindow == 0)
    {
        calcWindow = new CalcWindow(this);
        calcWindow->show();
    }
    else if(calcWindow->isVisible())
    {
        delete calcWindow;
        calcWindow = 0;
    }
    else
        calcWindow->show();

И вообще на сколько правильный такой подход?
« Последнее редактирование: Апреля 19, 2012, 09:14 от Alex_C » Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #1 : Апреля 18, 2012, 16:03 »

1. При закрывании окна оно должно удалиться. Что нужно для этого closeEvent указать?

см. Qt::WA_DeleteOnClose

2. При удалении нужно обнулить указатель на этот объект, чтоб при выборе меню для показа этого окна можно было проверить, создано оно или нет

см. QPointer
Записан
Alex_C
Гость
« Ответ #2 : Апреля 18, 2012, 16:51 »

To Alex Custov : коротко и по делу! Спасибо!!!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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