Каким образом определить какая из переданных клавиш была нажата используя WPARAM.
К примеру определить одну клавишу мыши легко:
void window::mouse_move(int x, int y, WPARAM wparam)
{
if(wparam & WM_LBUTTONDOWN)
wprintf_s(L"left [x: %d, y: %d]\n", x, y);
if(wparam & WM_RBUTTONDOWN)
wprintf_s(L"right [x: %d, y: %d]\n", x, y);
}
Но в таком случае при зажатии клавиши CTRL, будет вызван как первое так и второе условие.
Согласно документации MSDN, при работе с сообщением WM_MOUSEMOVE, нужно использовать специальные макроопределения MK_RBUTTON, MK_LBUTTON, и т.д.
Большое спасибо @mega.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости