导航
  • 主页
  • VC/MVC基础类
  • .NET 技术
  • VC/MFC界面
  • VC/MFC 进程
  • VC/MFC 数据库
  • VC/MFC&Web
  • Doc/View

GetAsyncKeyState的疑问

kuguoxin199 2010-05-31 03:51:14

#define KEYDOWN(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000)? 1 : 0)
BOOL CDemoDlg::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_KEYDOWN)
{
//获得键盘扫描码
UINT nScanCode = HIWORD(pMsg->lParam);

SetDlgItemInt(IDC_TEXT1, nScanCode, FALSE);

//获得虚拟键值
UINT nVKCode = ::MapVirtualKey(nScanCode, 3);

SetDlgItemInt(IDC_TEXT2, nVKCode, FALSE);
if (KEYDOWN(nVKCode))
{
MessageBox("正在按下中");
}
else
MessageBox("没有被按下");
}

return CDialog::PreTranslateMessage(pMsg);
}

为什么会对小键盘的消息检测不到呢,无论我按小键盘那个键,提示的都是“没有被按下”,其他的键倒是正常的,为什么?
来人 啊
...全文
45 点赞 收藏 回复
写回复
回复
切换为时间正序
请发表友善的回复…
发表回复

还没有回复,快来抢沙发~

发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告