WM_MOUSEMOVE/wParam не содержит состояние клавиши, только при нажатии любой кнопки мыши
Я использую окно WS_EX_LAYERED и получаю сообщение WM_MOUSEMOVE, когда мышь перемещается по непрозрачным областям. Все идет нормально.
Когда я нажимаю и удерживаю SHIFT или CTRL и перемещаю мышь, WM_MOUSEMOVE/wParam не указывает состояние клавиши.
Когда я нажимаю и удерживаю SHIFT или CTRL и ЛЮБЫЕ кнопки мыши при перемещении мыши, WM_MOUSEMOVE/wParam указывает состояние клавиши.
Когда я нажимаю на окно (предполагая, что устанавливаю фокус) и удерживаю SHIFT или CTRL, опять же, WM_MOUSEMOVE/wParam не указывает состояние клавиши.
Есть идеи, что здесь происходит? У меня есть подозрение, что это как-то связано с активным состоянием фокуса окна.
1 ответ
Я считаю, что если вам нужно получить ввод, когда ваше окно не в фокусе, вам придется использовать это:
кроме этого, если вы просто двигаете мышью, вы можете предположить, что состояние клавиши не изменилось, не так ли?