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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [Решено] Удалить окно при закрытии  (Прочитано 2675 раз)
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.128 секунд. Запросов: 23.