函数joyGetPos
该函数用来查询操纵杆的位置以及按键状态。
语法
MMRESULT joyGetPos(
UINT uJoyID,
LPJOYINFO pji
);
参数
uJoyID
被查询操纵杆的标识符。该参数的有效取值范围为0到15。
pji
结构体 JOYINFO指针,该指针包含操纵杆的位置以及操纵杆的状态。
返回值
若查询成功,则返回JOYERR_NOERROR。否则,则返回一下错误值。
返回值 | 描述 |
---|---|
MMSYSERR_NODRIVER | 该操纵杆的驱动已经丢失。 |
MMSYSERR_INVALPARAM | 传递了无效的参数。 |
JOYERR_UNPLUGGED | 该操纵杆没有连接到系统。 |
说明
对于包含4到6轴运动,POV控制,或者4个以上按键的设备,使用函数 joyGetPosEx。
支持
名称 | 条件 |
---|---|
最低支持客户端 | Windows 2000 Professional [desktop apps only] |
最低支持服务器 | Windows 2000 Server [desktop apps only] |
目标平台 | Windows |
头文件 | joystickapi.h (include Windows.h) |
LIB | Winmm.lib |
DLL | Winmm.dll |
结构体JOYINFO
该结构体包含操纵杆位置以及按键状态信息。
语法
typedef struct joyinfo_tag {
UINT wXpos;
UINT wYpos;
UINT wZpos;
UINT wButtons;
} JOYINFO, *PJOYINFO, *NPJOYINFO, *LPJOYINFO;
成员
wXpos
当前X坐标。
wYpos
当前Y坐标。
wZpos
当前Z坐标
wButtons
以下值或者值的组合描述操纵杆按键的状态。
按键 | 描述 |
---|---|
JOY_BUTTON1 | 第一个按键被按下 |
JOY_BUTTON2 | 第二个按键被按下 |
JOY_BUTTON3 | 第三个按键被按下 |
JOY_BUTTON4 | 第四个按键被按下 |
支持
名称 | 条件 |
---|---|
最低支持客户端 | Windows 2000 Professional [desktop apps only] |
最低支持服务器 | Windows 2000 Server [desktop apps only] |
头文件 | joystickapi.h (include Windows.h) |