![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Выполняемая в среде Windows программа реагирует на события. Событиями являются, например, щелчки и перемещение мыши, нажатие клавиш и вообще любое изменение среды окружения данной программы. Система сообщает приложению о событии при помощи сообщения, которое описывает изменение, произошедшее в окружающей приложение среде. Сообщения извлекаются из системной очереди. Каждое сообщение связывается с конкретным окном приложения, с каждым из которых, в свою очередь, связана собственная оконная процедура. Приложение получает сообщение с помощью функции GetMessage, после чего обращается к Windows посредством функции DispatchMessage. Затем Windows вызывает соответствующую оконную процедуру и передает ей это сообщение для обработки. Если сообщение не обрабатывается оконной процедурой, она передает его для обработки системе.
Структура сообщения представлена во включаемом файле следующим образом:
MSGSTRUCT struc
MsHWND UINT?
MsMESSAGE UINT?
MsWPARAM UINT?
MsLPARAM ULONG?
MsTIME ULONG?
MsPT ULONG?
ULONG?
MSGSTRUCT ends
Поле MsHWND указывает, какому окну передается сообщение. В поле MsMESSAGE передается код сообщения. Поля MsWPARAM и MsLPARAM содержат специфичную для сообщения информацию. Например, если поле сообщения содержит VM_MOUSEMOVE, то поле MsWPARAM содержит Продолжение прил. 4
информацию о том, какая клавиша нажата, а MsLPARAM – информацию о координатах курсора. Поля MsTIME и MsPT содержат соответственно время и позицию курсора, определенные в момент создания сообщения.
Дата публикования: 2015-10-09; Прочитано: 276 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!