ВУЗ:
Составители:
Рубрика:
37
case cmCommand2:
// Обработка команды cmCommand2
СlearEvent( event );
break;
…
case cmCommandN:
// Обработка команды cmCommandN
СlearEvent( event );
break;
default: // событие не обработано
break;
}
};
}
Обработчик событий группы вначале обрабатывает команды группы,
а затем, если событие не обработано, передает его своим элементам, вызы-
вая их обработчики событий.
void TGroup::HandleEvent(TEvent& event)
{ if( event.what == evCommand )
{switch( event.message.command )
// обработка событий объекта-группы
default: // событие не группой обработано
//получить доступ к
первому элементу группы
while((event.what != evNothing)!!( /* просмотрены не все элементы */)
{
//вызвать HandleEvent текущего элемента
//перейти к следующему элементу группы
}
break;
}
}
Метод ClearEvent-очистка события.
ClearEvent очищает событие, присваивая полю event.What значение
evNothing.
Главный цикл обработки событий (метод Execute)
Главный цикл обработки событий реализуется в методе Execute
главной группы-объекта “прикладная программа” по следующей схеме:
int TMyApp::Execute()
{do{endState=0;
37
case cmCommand2:
// Обработка команды cmCommand2
СlearEvent( event );
break;
…
case cmCommandN:
// Обработка команды cmCommandN
СlearEvent( event );
break;
default: // событие не обработано
break;
}
};
}
Обработчик событий группы вначале обрабатывает команды группы,
а затем, если событие не обработано, передает его своим элементам, вызы-
вая их обработчики событий.
void TGroup::HandleEvent(TEvent& event)
{ if( event.what == evCommand )
{switch( event.message.command )
// обработка событий объекта-группы
default: // событие не группой обработано
//получить доступ к первому элементу группы
while((event.what != evNothing)!!( /* просмотрены не все элементы */)
{
//вызвать HandleEvent текущего элемента
//перейти к следующему элементу группы
}
break;
}
}
Метод ClearEvent-очистка события.
ClearEvent очищает событие, присваивая полю event.What значение
evNothing.
Главный цикл обработки событий (метод Execute)
Главный цикл обработки событий реализуется в методе Execute
главной группы-объекта “прикладная программа” по следующей схеме:
int TMyApp::Execute()
{do{endState=0;
Страницы
- « первая
- ‹ предыдущая
- …
- 34
- 35
- 36
- 37
- 38
- …
- следующая ›
- последняя »
