ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »