Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Закрытие формы


Fr ©   (2009-09-24 17:27:00) 

Почему не вызывается событие onDestroy при закрытии формы?
Обрабатываю событие FormCloseQuery в котором присваивается true переменной CanClose. Остальные события по закрытию не обрабатываю, а в результате в onDestroy не захожу :( Получается, что форма просто скрывается, а не уничтожается.


Amoeba   (2009-09-24 20:47:00) [1]


> Почему не вызывается событие onDestroy при закрытии формы?

Потому, что эта форма не главная и AutoCreate, т.е. создаваемая автоматически (что есть по умолчанию). При закрытии она просто становится невидимой.


Leonid Troyanovsky   (2009-09-24 18:55:00) [2]


> Fr   (24.09.09 17:37) [2]

> Т.е. цепочка OnCloseQuery -> OnClose-> OnDeactivate -> OnHide
> -> OnDestroy не выполняется всегда?

Для главной формы выполняется.
Другие, по умолчанию, только прячутся.

--
Regards, LVT.


Омлет   (2009-09-24 18:47:00) [3]

> И после обработки OnCloseQuery обязательно надо обрабатывать OnClose самому?

Не обязательно. Код покажи, где-то у тебя ошибка.


Fr   (2009-09-24 17:37:00) [4]

Т.е. цепочка OnCloseQuery -> OnClose-> OnDeactivate -> OnHide -> OnDestroyне выполняется всегда? И после обработки OnCloseQuery обязательно надо обрабатывать OnClose самому?


Сергей М.   (2009-09-24 17:31:00) [5]


> Получается, что форма просто скрывается, а не уничтожается


Получается так)
А следом произойдет событие OnClose, которое ты не обрабатываешь и в котором как раз и следует определить дальнейшую судьбу формы)


Наверх

Титульная страница Поиск, карта сайта Написать письмо