Макросы – распаковщики сообщений
// =======================================================================
// Функция WndProc , выполняет обработку сообщений для главного окна приложения
// =======================================================================
LRESULT WINAPI
WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{ // Выполняем обработку сообщений. Идентификатор
// сообщения передается через параметр msg
switch (msg)
{ // Для сообщения WM_LBUTTONDOWN назначаем обработчик,
//расположенный в функции Cls_OnLButtonDown
HANDLE_MSG(hwnd, WM_LBUTTONDOWN, Cls_OnLButtonDown);
// Для сообщения WM_RBUTTONDOWN назначаем обработчик,
// расположенный в функции Cls_OnRButtonDown
21
HANDLE_MSG(hwnd, WM_RBUTTONDOWN, Cls_OnRButtonDown);
// Для сообщения WM_KEYDOWN назначаем обработчик,
// расположенный в функции Cls_OnKey
HANDLE_MSG(hwnd, WM_KEYDOWN, Cls_OnKey);
// Для сообщения WM_DESTROY назначаем обработчик,
// расположенный в функцииCls_OnDestroy
HANDLE_MSG(hwnd, WM_DESTROY, Cls_OnDestroy);
default:
return DefWindowProc(hwnd, msg, wParam, lParam);
}
}
//========================================================================
// Обработчик сообщения WM_LBUTTONDOWN
//========================================================================
#pragma argsused
void Cls_OnLButtonDown(HWND hwnd, BOOL fDoubleClick, int x, int y, UINT keyFlags)
{ MessageBox(NULL, "Нажата левая кнопка мыши",
"СообщениеWM_LBUTTONDOWN", MB_OK | MB_ICONINFORMATION); }
//========================================================================
// Обработчик сообщения WM_RBUTTONDOWN
//========================================================================
предыдущаяследующая