VC++怎样获取键盘是哪一个按键 按下了
我本来用的是bioskey(),但是这个是TC才有的,VC不知道怎么用打个比方,我做的程序是控制台中,控制一个“笑脸”,我按方向键↑,他就向上移动,但是怎样获取"↑"这个...
我本来用的是bioskey(),但是这个是TC才有的,VC不知道怎么用打个比方,我做的程序是控制台中,控制一个“笑脸”,我按方向键↑,他就向上移动,但是怎样获取 "↑"这个消息呢
展开
3个回答
推荐于2020-01-23
展开全部
实现方案有以下几种:
1、用SetWindowsHookEx(WH_KEYBOARD_LL / WH_KEYBOARD);
2、反复检查GetKeyboardState的值,自己确定键是否被按下;
3、其他的方法都不行的话,用DirectInput;
参考如下:
重载PreTranslate函数,在里面加判断:
if (WM_KEYDOWN == pMsg->message)
{
if ((VK_F10 == pMsg->wParam))
{
dosomething;
}
}
1、用SetWindowsHookEx(WH_KEYBOARD_LL / WH_KEYBOARD);
2、反复检查GetKeyboardState的值,自己确定键是否被按下;
3、其他的方法都不行的话,用DirectInput;
参考如下:
重载PreTranslate函数,在里面加判断:
if (WM_KEYDOWN == pMsg->message)
{
if ((VK_F10 == pMsg->wParam))
{
dosomething;
}
}
2013-08-08
展开全部
int key;scanf("%d",&key);while(key!=vk_esc)//vk_esc表示对应的ASCII码{scanf("%d",&key);if(key == vk_up)//vk_esc表示对应的ASCII码{moveUP();//你的移动函数}}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
获取键盘输入消息wm_char就可以了,也就是判断pmsg->message==vk_up
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询