Распознавание неизвестных кнопок мыши - PullRequest
1 голос
/ 23 декабря 2010

Итак, я писал простую программу для Windows, и меня действительно раздражает, что в некоторых других программах они не могут распознать весь диапазон ввода. Например, в Starcraft 2 вы не можете привязать дополнительные две кнопки мыши к пятикнопочной мыши. Для ввода с клавиатуры я использовал WPARAM сообщения WM_KEYDOWN, поэтому, если он не распознается, я все равно могу его распознать позже, даже если не отображать его в удобной форме. Но для кнопок мыши я пришел кроппером, потому что у них есть свои сообщения. Так что, если в будущем я получу мышь с семью кнопками, как я могу распознать шестую и седьмую кнопки без необходимости переписывать мое приложение?

1 Ответ

0 голосов
/ 23 декабря 2010

Я не думаю, что доступно общее сообщение "WM_BUTTONDOWN".

Лучший способ проверить это - использовать Spy ++ в окне.Вы увидите, что не отправлено общее сообщение.Кроме того, фактические значения всех WM_xxBUTTONDOWN также не соответствуют ни одному шаблону.

Что бы я сделал, это сконфигурировал бы приложение, чтобы оно могло понимать 6 новых сообщений, введенных вручную или настроенных где-либо, для WM_ [Z] BUTTONDOWN,WM_ [Z] BUTTONUP и WM_ [Z] BUTTONDBLCLK, а также все соответствующие сообщения WM_NCxxx, потому что, к счастью (вроде ...), все существующие сообщения более или менее используют один и тот же шаблон wParam + lParam.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...