虚拟按键的总结及示例

  符号常量 十六进制值 指定的鼠标或键盘按键
   VK_LBUTTON 01 鼠标左键
   VK_RBUTTON 02 鼠标右键
   VK_CANCEL 03 Control-break 过程
   VK_MBUTTON 04 鼠标中键
   VK_BACK 08 BACKSPACE 键
   VK_TAB 09 TAB 键
   VK_CLEAR 0C CLEAR 键
   VK_RETURN 0D ENTER 键
   VK_SHIFT 10 SHIFT 键
   VK_CONTROL 11 CTRL 键
   VK_MENU 12 ALT 键
   VK_PAUSE 13 PAUSE 键
   VK_CAPITAL 14 CAPS LOCK 键
   VK_ESCAPE 1B ESC 键
   VK_SPACE 20 SPACEBAR
   VK_PRIOR 21 PAGE UP 键
   VK_NEXT 22 PAGE DOWN 键
   VK_END 23 END 键
   VK_HOME 24 HOME 键
   VK_LEFT 25 LEFT ARROW 键
   VK_UP 26 UP ARROW 键
   VK_RIGHT 27 RIGHT ARROW 键
   VK_DOWN 28 DOWN ARROW 键
   VK_SELECT 29 SELECT 键
   VK_EXECUTE 2B EXECUTE 键
   VK_SNAPSHOT 2C PRINT SCREEN键(用于Windows 3.0及以后版本)
   VK_INSERT 2D INS 键
   VK_DELETE 2E DEL 键
   VK_HELP 2F HELP 键
   ///
   对于字母键和非小键盘上的数字键,直接在单引号中加入该键就行.
   比如:a键:'A'
   1键:'1'
   //

   VK_LWIN 5B Left Windows 键 (Microsoft自然键盘)
   VK_RWIN 5C Right Windows 键 (Microsoft自然键盘)
   VK_APPS 5D Applications 键 (Microsoft自然键盘)
   VK_NUMPAD0 60 数字小键盘上的 0 键
   VK_NUMPAD1 61 数字小键盘上的 1 键
   VK_NUMPAD2 62 数字小键盘上的 2 键
   VK_NUMPAD3 63 数字小键盘上的 3 键
   VK_NUMPAD4 64 数字小键盘上的 4 键

   VK_NUMPAD5 65 数字小键盘上的 5 键
   VK_NUMPAD6 66 数字小键盘上的 6 键
   VK_NUMPAD7 67 数字小键盘上的 7 键
   VK_NUMPAD8 68 数字小键盘上的 8 键
   VK_NUMPAD9 69 数字小键盘上的 9 键
   VK_MULTIPLY 6A Multiply 键
   VK_ADD 6B Add 键
   VK_SEPARATOR 6C Separator 键
   VK_SUBTRACT 6D Subtract 键
   VK_DECIMAL 6E Decimal 键
   VK_DIVIDE 6F Divide 键
   VK_F1 70 F1 键
   VK_F2 71 F2 键
   VK_F3 72 F3 键
   VK_F4 73 F4 键
   VK_F5 74 F5 键
   VK_F6 75 F6 键
   VK_F7 76 F7 键
   VK_F8 77 F8 键
   VK_F9 78 F9 键
   VK_F10 79 F10 键
   VK_F11 7A F11 键
   VK_F12 7B F12 键
   VK_F13 7C F13 键
   VK_F14 7D F14 键
   VK_F15 7E F15 键
   VK_F16 7F F16 键
   VK_F17 80H F17 键
   VK_F18 81H F18 键
   VK_F19 82H F19 键
   VK_F20 83H F20 键
   VK_F21 84H F21 键
   VK_F22 85H F22 键
   VK_F23 86H F23 键
   VK_F24 87H F24 键
   VK_NUMLOCK 90 NUM LOCK 键
   VK_SCROLL 91 SCROLL LOCK 键
   VK_ATTN F6 Attn 键
   VK_CRSEL F7 CrSel 键
   VK_EXSEL F8 ExSel 键
   VK_EREOF F9 Erase EOF 键

  VK_PLAY FA Play 键
   VK_ZOOM FB Zoom 键
   VK_OEM_CLEAR FE Clear 键

   举例:

   (一)响应单独的按键:
   先添加PreTranslateMessage()(响应WM_CHAR)也是同样的效果,因为本例只捕捉键盘)
   BOOL CMydilog::PreTranslateMessage(MSG* pMsg)
   {

   // TODO: Add your specialized code here and/or call the base class
   if (pMsg->message == WM_KEYDOWN)
   {
   if(pMsg->wParam=='M')//直接用上面的虚码代替就可以响应所指键
   MessageBox("hello");//如果按下M键弹出消息.比如想当按下小键盘1时
   //弹出就用VK_NUMPAD1代替'M'
   }
   return CDialog::PreTranslateMessage(pMsg);
   }

   (二)组合键的用法:(本例响应Ctrl+X键)
   BOOL CMydilog::PreTranslateMessage(MSG* pMsg)
   {
   // TODO: Add your specialized code here and/or call the base class

   if (pMsg->message == WM_KEYDOWN)
   {
   switch (pMsg->wParam)
   {
   case VK_ESCAPE:
   SetFocus ();
   return TRUE;
   case 'X':
   if(::GetKeyState(VK_CONTROL) < 0)//如果是Shift+X这里就
   //改成VK_SHIFT
   MessageBox("hello");
   return TRUE;

   }
   }
   return CDialog::PreTranslateMessage(pMsg);
   }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值