ВУЗ:
Составители:
Рубрика:
30
• Обработчик событий (метод HandleEvent). Получив событие
(запись типа TEvent), обработчик событий для класса TObject обрабатыва-
ет его по следующей схеме:
Procedure TObject. HandleEvent (Var Event: TEvent);
Begin
if Event. What = evMessage then begin
case Event. Command of
cmCommand1: Action1 (Event. Info);
cmCommand2: Action2 (Event. Info);
…
else exit end;
ClearEvent (Event) end
End;
Обработчик событий группы вначале обрабатывает команды группы,
а затем, если событие не обработано, передает его своим элементам, вызы-
вая их обработчики событий.
Procedure TGroup.HandleEvent (Var Event: TEvent);
Begin
if Event. What = evMessage then begin
case Event. Command of
{обработка команд объекта-
группы}
else begin
{получить доступ к первому элементу группы}
while (Event. What <> evNothing and {просмотрены не все элемен-
ты} do begin
{вызвать HandleEvent текущего элемента}
{перейти к следующему элементу группы}
end;
exit;
end end;
ClearEvent (Event);
end;
End;
• Метод ClearEvent − очистка события. ClearEvent очищает
событие, присваивая полю Event.What значение evNothing.
• Главный цикл обработки событий (метод Execute). Главный
цикл обработки событий реализуется в методе Execute главной группы –
объекта “прикладная программа” по следующей схеме:
30
• Обработчик событий (метод HandleEvent). Получив событие
(запись типа TEvent), обработчик событий для класса TObject обрабатыва-
ет его по следующей схеме:
Procedure TObject. HandleEvent (Var Event: TEvent);
Begin
if Event. What = evMessage then begin
case Event. Command of
cmCommand1: Action1 (Event. Info);
cmCommand2: Action2 (Event. Info);
…
else exit end;
ClearEvent (Event) end
End;
Обработчик событий группы вначале обрабатывает команды группы,
а затем, если событие не обработано, передает его своим элементам, вызы-
вая их обработчики событий.
Procedure TGroup.HandleEvent (Var Event: TEvent);
Begin
if Event. What = evMessage then begin
case Event. Command of
{обработка команд объекта-группы}
else begin
{получить доступ к первому элементу группы}
while (Event. What <> evNothing and {просмотрены не все элемен-
ты} do begin
{вызвать HandleEvent текущего элемента}
{перейти к следующему элементу группы}
end;
exit;
end end;
ClearEvent (Event);
end;
End;
• Метод ClearEvent − очистка события. ClearEvent очищает
событие, присваивая полю Event.What значение evNothing.
• Главный цикл обработки событий (метод Execute). Главный
цикл обработки событий реализуется в методе Execute главной группы –
объекта “прикладная программа” по следующей схеме:
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »
