有人可以告诉我是否有办法捕获额外的操纵杆按钮?我的意思是按钮编号 5、6、7、8 等等。
我使用此代码来捕获按钮按下事件:
procedure MMJOY1BUTTONDOWN (var LocMessage: TMMJoyStick); message MM_JOy1BUTTONDOWN;
但问题是它只捕获了 4 个标准按钮,而不是任何额外的按钮。
非常感谢
Multimedia Joystick API 不支持为按钮 5+ 生成窗口消息,您必须使用手动轮询它们的状态joyGetPosEx()
。否则,您应该使用DirectX API 中的DirectInput,因为它取代了旧 API。
更新:或者,您可以使用原始输入 API直接从操纵杆硬件接收事件通知。有关更多详细信息,请参见代码项目: