ON_MESSAGE
Указывает, что функция будет обрабатывать определяемое пользователем сообщение.
ON_MESSAGE(message, memberFxn)
Параметры
message
Идентификатор сообщения.memberFxn
Имя функции обработчика сообщений, к которой сопоставляется данное сообщение.Тип функции должен быть afx_msg LRESULT (CWnd::*)(WPARAM, LPARAM).
Заметки
Определяемые пользователем сообщения все сообщения, которые не являются стандартных сообщений WM_MESSAGE windows.При выборе идентификатор сообщения, следует использовать значения в диапазоне WM_USER (0x0400) в 0x7FFF или WM_APP (0x8000) в 0xBFFF.Дополнительные сведения об идентификаторах сообщений см. в разделе WM_APP.
Должно быть ровно на одну ON_MESSAGE выписка макроса в сопоставлении сообщений для каждого определяемого пользователем сообщения, должны быть сопоставлены функции обработчика сообщений.
Примечание |
---|
Помимо определяемых пользователем сообщений, ON_MESSAGE обрабатывает менее распространенные сообщения windows.Дополнительные сведения см. в статье базы знаний 99848: СВЕДЕНИЯ: Используйте макрос ON_MESSAGE () для сопоставления Менее-Общие сообщения. |
Дополнительные сведения и примеры см. в разделе Шаги обработки сообщений и сопоставления и Определяемые пользователем обработчики
Пример
#define WM_MYMESSAGE (WM_USER + 100)
BEGIN_MESSAGE_MAP(CMyWnd2, CWnd)
ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
END_MESSAGE_MAP()
// inside the class declaration
afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
LRESULT CMyWnd2::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
// Handle message here.
return 0;
}
Требования
Header: afxmsg_.h