zoukankan      html  css  js  c++  java
  • 【MFC】在MFC中PreTranslateMessage()的使用方法

    BOOL CSearchuserDlg::PreTranslateMessage(MSG* pMsg)
    
    {
    
         if (pMsg->message==WM_KEYDOWN)  // 判断是否有按键按下
    
         {
    
               switch (pMsg->wParam)
    
               {
    
               case VK_DOWN:     // 表示是方向键中的向下的键
    
                    //add handle code here
    
                    break ;
    
               case VK_UP:      // 表示是方向键中的向上的键
    
                    //add handle code here
    
                    break ;
    
               default :
    
                    break ;
    
               }
    
         }
    
    }
    BOOL CMyDlg::PreTranslateMessage(MSG* pMsg)
    
    {
         // 按键相应
         if (pMsg->message == WM_KEYDOWN)
         {
               if (pMsg->wParam == VK_DOWN)
               {
                    // 向下键按下
               }
               else if (pMsg->wParam == VK_RIGHT)
               {
                    // 向右键按下
               }
               else if (pMsg->wParam == VK_LEFT)
              {
                    // 向左键按下
               }
               else if (pMsg->wParam == VK_UP)
               {
                    // 向上键按下
               }
               else if (pMsg->wParam == VK_SHIFT)
               {
                    //VK_LSHIFT 为左 Shift 键按下
                    //Shift 键按下
               }
               else if (pMsg->wParam == VK_CONTROL)
               {
    
                    //Ctrl 键按下
    
               }
    
               else if (pMsg->wParam>=VK_NUMPAD0 && pMsg->wParam<=VK_NUMPAD9)
    
               {
                    // 小键盘数字键按下
    
               }
               else if (pMsg->wParam>=0x30 && pMsg->wParam<=0x39)
               {
                    // 数字键按下 ( 我记得不能使用 VK_0)
               }
               else if (pMsg->wParam>=0x41 && pMsg->wParam<=0x5A)
               {
                    // 键盘字母键按下 ( 我记得不能使用 VK_A)
               }
               else if (pMsg->wParam == VK_BACK)
    
               {
                    // 退格键按下
               }
               else if (pMsg->wParam == VK_DELETE)
               {
                    // 删除键按下
               }
               else if (pMsg->wParam == VK_F1)
               {
                    //F1 键按下
               }
               //return true;  // 使消息不再进行处理
         }
    
         if (pMsg->message == WM_KEYUP)
         {
               if (pMsg->wParam == VK_SHIFT)
    
               {
                    //Shift 键弹起
               }
               else if (pMsg->wParam == VK_CONTROL)
               {
                    //Ctrl 键弹起
               }
               //return true;  // 使消息不再进行处理
         }
         return CDialog::PreTranslateMessage(pMsg);
    }
  • 相关阅读:
    PS 给天空添加蓝天白云<转载>
    Study 8 —— 行块元素及定位
    Study 7 —— CSS美化背景和边框
    Study 6 —— 字体和段落属性
    Study 5 —— CSS概述
    Study 4 —— 表单标签
    Study 3 —— 表格
    Study 2 —— 图片热点区域
    Study 1 —— HTML5概述
    CentOS6.x下,tomcat
  • 原文地址:https://www.cnblogs.com/wolfray/p/5547269.html
Copyright © 2011-2022 走看看