Сообщения (часть 4)
При обработке сообщений бывают ситуации, когда для передачи двух 16-разрядных значений используется один 32-разрядный параметр. Для удобства работы тип TMessage описан как вариантная запись, поэтому содержит поля WParamLo, WParamHi, LParamLo, LParamHi, ResultLo и ResultHi, имеющие тип Word и дающие доступ к старшему и младшему словам соответствующего параметра.
Примечание:
что тип TMessage — не единственный тип, который может иметь параметр метода обработки сообщения. Стоит заметить, что данный тип является наиболее часто используемым (универсальным) типом, тем не менее, для многих сообщений в модуле Messages.pas описаны собственные типы.
Их названия образованы от названия соответствующих сообщений. Например, для сообщения WM_Paint TWMPaint, ДЛЯ WM_GetText —
TWMGetText.
В этих структурах все поля имеют тип, наилучшим образом подходящий для обработки именно этого сообщения. Кроме того, эти поля имеют названия, отражающие их назначение, что позволяет более удобно читать программу.
Но такие типы описаны не для всех сообщений, поэтому иногда приходится пользоваться универсальным TMessage.
Комментарии (0)