изначально я мог что-то напечатать, когда нажимал только правую кнопку мыши, используя if (wParam == WM_RBUTTONDOWN)
, но теперь я хочу тот же эффект, я хочу что-то напечатать, когда нажата правая кнопка мыши + клавиша Ctrl. как я могу этого добиться?
я пробовал это
LRESULT CALLBACK MainWindow::mouseProc(int Code, WPARAM wParam, LPARAM lParam)
{
auto& ms = *(const MSLLHOOKSTRUCT*)lParam;
MSLLHOOKSTRUCT* pMouseStruct = (MSLLHOOKSTRUCT*)lParam;
if (pMouseStruct != nullptr)
{
if (wParam == WM_RBUTTONDOWN & MK_CONTROL) // Here, i added MK_CONTROL but it doesn't work
{
qDebug() << "Print something when Right mouse button and Ctrl button is pressed togather";
}
}
return CallNextHookEx(NULL, Code, wParam, lParam);
}
ОБНОВЛЕНИЕ
когда я хочу попробовать случай, когда нажат только Ctrl, и он должен что-то напечатать, он все равно не работает
LRESULT CALLBACK MainWindow::mouseProc(int Code, WPARAM wParam, LPARAM lParam)
{
auto& ms = *(const MSLLHOOKSTRUCT*)lParam;
MSLLHOOKSTRUCT* pMouseStruct = (MSLLHOOKSTRUCT*)lParam;
if (pMouseStruct != nullptr)
{
if (wParam == MK_CONTROL) // Here, i added only MK_CONTROL but it doesn't work
{
qDebug() << "Print something when Ctrl button is pressed ";
}
}
return CallNextHookEx(NULL, Code, wParam, lParam);
}
что мне здесь не хватает?
WH_KEYBOARD_LL
). - person Drake Wu   schedule 12.10.2020if (wParam == WM_RBUTTONDOWN & MK_CONTROL)
делает не то, что вы думаете. - person Raymond Chen   schedule 12.10.2020mouseHook = SetWindowsHookEx(WH_MOUSE_LL, &mouseProc, hInstance, 0);
, поэтому в этой сложной ситуации, как я могу ввести хук клавиатуры + хук мыши? - person yezy   schedule 12.10.2020