Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.186.6] |
|
Сообщ.
#1
,
|
|
|
Есть джойстик с 5 кнопками. Драйвер в тестовом режиме показывает, что все 5 кнопок работают. В драйвере вообще забита возможность работы с 11 кнопками. Но в MSDN для стандартного джойстика зарезервировано только 4 кнопки. Надо работать минимум с 5 кнопками. Смотрел в spy++, от пятой кнопки сообщения не приходят! Но драйвер при тесте показывает, что 5-я кнопка работает! Как работать с 5-ой кнопкой?
|
Сообщ.
#2
,
|
|
|
Цитата a_n_y_a @ Но в MSDN для стандартного джойстика зарезервировано только 4 кнопки. Надо работать минимум с 5 кнопками. Вот, посмотри: joyGetPosEx JOYINFOEX Цитата ... dwButtons Current state of the 32 joystick buttons. The value of this member can be set to any combination of JOY_BUTTON n flags, where n is a value in the range of 1 through 32 corresponding to the button that is pressed. dwButtonNumber Current button number that is pressed. ... |
Сообщ.
#3
,
|
|
|
Да, я посмотрел MSDN, константы для кнопок с 5-ой существуют, но сообщение не приходит! Если смотреть код кнопки в WParam, то можно получить доступ к 32 кнопкам! Но сообщения не приходят! Эти кнопки после 5-ой можно анализировать либо в функции перемещения джойстика, либо в функции обработки нажатия на кнопку до 5-ой! Тогда наряду с кнопками 1-4 можно проверить код кнопки после 5-ой. А надо получить сообщение на нажатие кнопки 5! Драйвер как то же получает такое сообщение, или он работает с железом напрямую?
|
Сообщ.
#4
,
|
|
|
Думаю вас спасёт RAW INPUT
https://msdn.microsoft.com/en-us/library/wi...6(v=vs.85).aspx |
Сообщ.
#5
,
|
|
|
Я решил проблему переводом джойстика с посылки сообщений по событиям джойстика на посылку сообщений с заданным временным интервалом. И в функции перемещения джойстика в случае нажатия только кнопок после пятой, я вызываю функцию реакции на нажатие кнопки с передачей ей полученных значений параметров, wparam и lparam.
|