Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.19;
Скачать: CL | DM;

Вниз

событие закрытия формы   Найти похожие ветки 

 
Надежда   (2007-07-22 21:16) [0]

Как обработать  событие закрытия формы (крестик)?
Пожалуйста, ответьте!


 
begin...end ©   (2007-07-22 21:31) [1]

OnCloseQuery
OnClose


 
Надежда   (2007-07-22 21:39) [2]

Спасибо. А как быть если у меня выполняются расчеты по таймеру, а в это время пользователь нажал крестик и мне надо это событие обработать. т.е. в процессе расчетов анализировать нажат ли крестик?


 
{RASkov} ©   (2007-07-22 21:47) [3]

> [2] Надежда   (22.07.07 21:39)

if Application.Terminated then ...


 
{RASkov} ©   (2007-07-22 21:56) [4]

Если необходимо наоборот предотвратить закрытие программы, то либо на OnClose параметр Action выставлять в caNone либо на OnCloseQuery CanClose в False....
Пример:
Перед вычислениями переменную var StartProc: Boolean; выставляем в True. (Соответственно после вычислений в False, также нужно предусмотреть "запасной выход" из программы :))
на OnCloseQuery:
CanClose:=not StartProc;
Вариантов куча.... может быть можно и без переменной обойтись - CanClose:=not Timer1.Enabled;
Вопрос подробнее задавай.....


 
Leonid Troyanovsky ©   (2007-07-22 22:17) [5]


> Надежда   (22.07.07 21:39) [2]

> событие обработать. т.е. в процессе расчетов анализировать
> нажат ли крестик?

В процессе расчетов любые сообщения, в том числе таймера
или закрытия окна, обрабатывать некому, бо первичный поток
занят оными расчетами.

Поэтому, надо разбавлять расчеты вызовами Application.ProcessMessages,
либо делать расчеты в отдельном TThread.
Оба способа имеют свои неудобства, но первый - проще.

--
Regards, LVT.


 
Надежда   (2007-07-24 11:24) [6]

Спасибо!!! Разобрались. Надо было мне лучше подумать над алгоритмом программы. Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2007.08.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
1-1181134690
Arm79
2007-06-06 16:58
2007.08.19
маппинг файлов


3-1178164046
Slider007
2007-05-03 07:47
2007.08.19
Транзакции в FireBird


15-1185232100
Kostafey
2007-07-24 03:08
2007.08.19
С днем рождения ! 24 июля


2-1185278362
Dr. Andrew
2007-07-24 15:59
2007.08.19
Как корректно указать параметры в функции GetWindowsDirectoryW?


15-1185115628
Rubagl
2007-07-22 18:47
2007.08.19
Книга "Delphi. Готовые алгоритмы. " Нужны исходники.