![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Прервать перебор записей таблицы по Esc [D5]
desha © (2003-01-13 22:55:00)Мастера. Такой вопрос.
В цикле перебираются записи таблицы. Нужно все это прервать
по нажатию юзером кнопки (ex. Esc). Можно как-то через
Application, но не могу разобраться...
TTCustomDelphiMaster (2003-01-13 23:29:00) [1]var EscPressed: Boolean;
procedure TCargoDayRepForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_ESCAPE then
EscPressed := True;
end;
procedure .....
......
EscPressed := False;
while not (Query1.Eof or EscPressed) do
begin // Цикл перебора записией
.....
Query1.Next;
Application.ProssesMessages; // Смотрим, были ли события
end;
....
end;
У формы поставь KeyPreview = True
MsGuns (2003-01-13 23:14:00) [2]
procedure Form1.Button1Click(Sender: TObject);
begin
Button1.Tag := 1; // Кнопка нажата
end;
procedure .....
......
while not Query1.Eof do
begin // Цикл перебора записией
.....
Query1.Next;
Application.ProssesMessages; // Смотрим, были ли события
if Button1.Tag>0 then
begin
Button1.Tag := 0;
exit;
end;
end;
....
end;
;)))