龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

vc模拟鼠标键盘操作实用类(5)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
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
  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);
  } 

精彩图集

赞助商链接