北通游戏手柄获取每个按钮消息和两个摇杆消息

渔樵者 2016-08-05 05:20:37
求教;
现在想用北通游戏手柄制作一个控制的程序,可是现在只获取到了一个摇杆的消息。和四个按钮的消息,另外一个摇杆和方向按键的消息怎么也获取不到,,
case MM_JOY1BUTTONDOWN :

if (wParam & JOY_BUTTON1){
MessageBeep(MB_ICONQUESTION);
SetDlgItemText(IDC_BUTTON1,"按下");
InitConsoleWindow();
printf("1anxia");
}
if (wParam & JOY_BUTTON2){
MessageBeep(MB_ICONEXCLAMATION);
SetDlgItemText(IDC_BUTTON2,"按下");
m_btn2.SetCheck(BST_CHECKED);
}
if (wParam & JOY_BUTTON3){
SetDlgItemText(IDC_BUTTON3,"按下");
}
if (wParam & JOY_BUTTON4){
SetDlgItemText(IDC_BUTTON4,"按下");
}

break;
case MM_JOY1BUTTONUP:
SetDlgItemText(IDC_BUTTON1, "1");
SetDlgItemText(IDC_BUTTON2, "2");
SetDlgItemText(IDC_BUTTON3, "3");
SetDlgItemText(IDC_BUTTON4, "4");
break;

case MM_JOY1MOVE:
WORD x, y;
POINT pt;

// UpdateData(TRUE);
//获取当前屏幕光标位置
GetCursorPos(&pt);
//游戏杆在当前系统中的位置坐标范围从0 65535。位置表示范围从0-31
if (!m_Absolute){
x = LOWORD(lParam)/2048;
y = HIWORD(lParam)/2048;
//如果游戏杆在中心位置的左边,移动光标到左边。反之亦然
if(x <= 12){
pt.x = pt.x + x - 15;
// printf("nihao");//向左走;
}

求大神指点怎样才能获取其他操作钮的消息?
...全文
295 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
elemusic 2016-08-27
  • 打赏
  • 举报
回复
可以参考下开源的工程,比如SDL和OIS,都支持北通,移植如果不行不如直接就用人家开源的,比如SDL,只用他的控制器处理部分,其他部分不管还用你自己的就行了
渔樵者 2016-08-22
  • 打赏
  • 举报
回复
不是模式的问题,找到了一个可以获取所有键的demo,但是移植到工程上却不可用。疯了都
cq9595 2016-08-19
  • 打赏
  • 举报
回复
是不是手柄模式不对,按手柄中间那个键试试?

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧