void CTestDlg::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)我判断nChar。
为什么我在MSDN上看到是 (30)
0 key (31)
1 key (32)
2 key (33)
3 key (34)
4 key (35)
5 key (36)
6 key (37)
7 key (38)
8 key (39)
9 key
但是我在程序里调试,发现是 switch(nChar)
{
case 48:
case VK_NUMPAD0:
key = "0";
break; case 49:
case VK_NUMPAD1:
key = "1";
break; case 50:
case VK_NUMPAD2:
key = "2";
break; case 51:
case VK_NUMPAD3:
key = "3";
break; case 52:
case VK_NUMPAD4:
key = "4";
break; case 53:
case VK_NUMPAD5:
key = "5";
break; case 54:
case VK_NUMPAD6:
key = "6";
break; case 55:
case VK_NUMPAD7:
key = "7";
break; case 56:
case VK_NUMPAD8:
key = "08";
break; case 57:
case VK_NUMPAD9:
key = "9";
break; default:
break;
}
OnKeyDown函数里的nChar和virtual-key code 里定义的对不上,,我的代码运行确实没错,但是和MSDN的定义不一样啊。。怎么回事?
另外*和#的virtual-key code 是什么?在MSDN里没找到。