![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проверка нажатия кнопки во цикле? [D7, XP]
Ruslan777 © (2009-01-19 09:04:00)Народ, подскажите как во время выполнения цикла
For i:=1 to ...
Sleep(0);
Application.ProcessMessages;
end;
организовать проверку нажатия клавиш и при нажатии ESC выйти из цикла?
Ruslan777 (2009-01-19 10:08:00) [1]Громадное спасибо!
Юрий Зотов (2009-01-19 09:19:00) [2]1. Вводим приватное поле формы Flag: boolean
2. Выставляем свойство формы KeyPreview в True
3. В обработчике события OnKeyPress формы пишем:
Flag := Key = VK_ESCAPE
4. В цикле пишем:
for i := 1 to ...
begin
if Flag then
begin
Flag := False;
Break;
end;
Sleep(0);
Application.ProcessMessages;
end;
Сергей М. (2009-01-19 09:15:00) [3]if Boolean(GetKeyState(VK_ESCAPE) AND $8000) then ESC_Нажата
MBo (2009-01-19 09:14:00) [4]метод-обработчик нажатия выставляет флаг, а в цикле он проверяется и break