В настоящее время я обнаруживаю x и y позицию щелчка мыши, сохраняю ее в Point и отображаю ее в окне сообщения.
Я хочу иметь возможность читать, если удерживать нажатой другую клавишу клавиатуры, например, Shift или Control.
Глядя на MSDN, я нашел следующую информацию:
wParam Указывает, являются ли различные
виртуальные ключи не работают. Этот параметр
может быть одним или несколькими из следующих
значения.
MK_CONTROL Клавиша CTRL нажата.
MK_MBUTTON Средняя кнопка мыши
вниз.
MK_RBUTTON Правая кнопка мыши
вниз.
MK_SHIFT Клавиша SHIFT не работает.
MK_XBUTTON1 Windows 2000 / XP: первый
Кнопка Х нажата.
MK_XBUTTON2 Windows 2000 / XP:
вторая кнопка Х нажата.
Проблема, с которой я столкнулся, заключается в том, что я не уверен, как сохранить результаты из wParam для каждого параметра и использовать их так, как я должен отображать их в окне сообщения.
Вот мой прогресс:
LRESULT CALLBACK WindowFunc(HWND hMainWindow, UINT message,
WPARAM wParam, LPARAM lParam)
{
POINTS mouseXY;
WCHAR buffer[256];
// Act on current message
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_LBUTTONUP:
// Get mouse x, y
mouseXY = MAKEPOINTS(lParam);
// Output the co-ordinates
swprintf(buffer, 255, L"x = %d, y = %d", mouseXY.x, mouseXY.y);
MessageBox(0, buffer, L"Mouse Position", MB_OK);
break;
default:
return DefWindowProc(hMainWindow, message, wParam, lParam);
}
return 0;
}
Спасибо за помощь