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

Вниз

Выход из приложения   Найти похожие ветки 

 
Vetal73   (2008-03-20 10:29) [0]

после компиляции при запуске не могу закрыть окно пока алгоритм до конца не отработает. Что сделать?


 
Kolan ©   (2008-03-20 10:33) [1]

Какое окно? Какой алгоритм?


 
Семеныч   (2008-03-20 10:44) [2]

> Vetal73   (20.03.08 10:29)

Если алгоритм циклический, вставьте в цикл Application.ProcessMessages.

Если нет, то создайте класс - потомок TThread и вынесите алгоритм в его метод Execute.


 
vetal73   (2008-03-20 14:34) [3]

Application.ProcessMessages уже вставил, окно можно свернуть, но закрыть пока не закончится обработка нажатия button не получается.


 
Семеныч   (2008-03-20 14:36) [4]

> vetal73   (20.03.08 14:34) [3]

Код обработки нажатия кнопки - в студию.


 
{RASkov} ©   (2008-03-20 15:01) [5]

Application.ProcessMessages;
if Application.Terminated then Break;

или цикл так сделать:
while not Application.Terminated and (...) do...


 
Palladin ©   (2008-03-20 18:13) [6]

только не вызывать слижком уж часто... а то весь цинус алгоритма сломается из-за года обработки :)

и вообще очень рекомендую Семеныч   (20.03.08 10:44) [2] часть вторая


 
ЦУП ©   (2008-03-20 19:57) [7]


> vetal73   (20.03.08 14:34) [3]
> Application.ProcessMessages уже вставил, окно можно свернуть,
>  но закрыть пока не закончится обработка нажатия button
> не получается.


Стандартное решение:

В теле цикла периодически(!) выполняется Application.ProcessMessages. В обработчике нажатия кнопки устанавливается boolean-флаг. В теле цикла этот флаг проверяется для прерывания цикла.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
2-1205562445
aleko
2008-03-15 09:27
2008.04.13
Caption динамического TMenuItem


4-1186810295
Кирилл_А
2007-08-11 09:31
2008.04.13
bsToolWindow для WinApi


15-1203874860
Dmitry S
2008-02-24 20:41
2008.04.13
Через 13 часов вылет в столицу...


2-1205626460
alert2006
2008-03-16 03:14
2008.04.13
Заменить в файле


15-1204405825
Alex
2008-03-02 00:10
2008.04.13
Как вывести в Edit переменную Integer?