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);
}

【MFC】在MFC中PreTranslateMessage()的使用方法的更多相关文章

  1. 浅谈MFC类CrackMe中消息处理函数查找方法

    最近一个学姐发给我了一份CrackMe希望我解一下,其中涉及到了MFC的消息函数查找的问题,就顺便以此为例谈一下自己使用的消息函数查找的方法.本人萌新,如果有任何错漏与解释不清的地方,欢迎各路大佬指正 ...

  2. VS2010 MFC中 静态编译设置方法

    问题:VS2010 c++编写的程序在别人的机子运行不了,缺少mfc100u.dll xxx100d.dll等 解决方法:1.将这些dll打包,和应用程序一起发布;2.采用MFC静态编译; 静态编译: ...

  3. mfc视类中错误:IntelliSense: declaration is incompatible with。。。解决方案

    基本情况是我自己写了一个类: class CDib {....} 然后在mfc自动生成的“工程名Dlg.cpp”中使用类CDib,我的工程名是MfcPictureProcessing,所以类是clas ...

  4. [转]MFC子线程中更新控件内容的两种办法

    一.概述 每个系统中都有线程(至少都有一个主线程),而线程最重要的作用就是并行处理,提高软件的并发率.针对界面来说,还能提高界面的响应能力.一般的,为了应用的稳定性,在数据处理等耗时操作会单独在一个线 ...

  5. MFC关于多线程中传递窗口类指针时ASSERT_VALID出错的另类解决 转

    MFC关于多线程中传递窗口类指针时ASSERT_VALID出错的另类解决   在多线程设计中,许多人为了省事,会将对话框类或其它类的指针传给工作线程,而在工作线程中调用该类的成员函数或成员变量等等. ...

  6. 关于MFC框架程序中CWinApp::OnIdle

    很早之前就发现,我写的图形引擎在MFC框架程序中的刷帧率始终在60FPS左右.好在自己的程序对刷帧率的要求不是很高,所以一直没有太过纠结此事.直到今天看了别人的程序才发现应该在函数CWinApp::O ...

  7. 【MFC】MFC改变对话框中静态文本的字体大小

    MFC改变对话框中静态文本的字体大小 2010/08/09 11:30 VC的对话框字体设置对所有控件都有效,你不能单独地改变某个静态文本的字体.对于你的问题,需要首先用CreateFont来建立一个 ...

  8. MFC exe文件生成的图标更改方法

    MFC exe文件生成的图标更改方法 https://blog.csdn.net/txwtech/article/details/92980545

  9. 实现MFC扩展DLL中导出类和对话框

    如果要编写模块化的软件,就要对对动态链接库(DLL)有一定的了解,本人这段时间在修改以前的软件时,决定把重复用的类和对话框做到DLL中,下面就从一个简单的例子讲起,如何实现MFC扩展DLL中导出类和对 ...

随机推荐

  1. [nodejs]在mac环境下如何将node更新至最新?

    在mac下安装angular-cli时,报出较多错误.初步怀疑是因为node环境版本过低导致. 在mac下,需要执行如下几步将node更新至最新版本,也可以更新到指定版本 1. sudo npm ca ...

  2. 洛谷——P1063 能量项链

    P1063 能量项链 题目描述 在MarsMars星球上,每个MarsMars人都随身佩带着一串能量项链.在项链上有NN颗能量珠.能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数.并且,对 ...

  3. 一个电商项目的Web服务化改造6:单元测试4步走,构造数据、执行操作、断言、回滚

      最近一直在做一个电商项目,需要把原有单系统架构的项目,改造成基于服务的架构,SOA.     有点挑战,做完了,会有很大进步. 单元测试,在很早之前的文章已经介绍过.     可以在这里看到相关的 ...

  4. webstorm+nodejs环境中安装淘宝镜像

    用过nodejs的人都知道,从node的官方模板库下载依赖包的时候,经常会遇到“假死”(页面静止不动)的状态,这种速度简直要逼死焦急地等待下班的人.还好咱们万能的淘宝提供了淘宝镜像这么一个不要更好用的 ...

  5. 00106_UDP通信

    1.DatagramPacket (1)JDK中提供了一个DatagramPacket类,该类的实例对象就相当于一个集装箱,用于封装UDP通信中发送或者接收的数据: (2)在创建发送端和接收端的Dat ...

  6. 华为USG6350防洪墙SNMP最简单功能配置

    https://www.cnblogs.com/vincent-liang/p/7785089.html

  7. nyoj_8_一种排序_201311251238

    一种排序 时间限制:3000 ms  |           内存限制:65535 KB 难度:3   描述 现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复:还知道这个长方形的宽和长,编 ...

  8. PHP中echo和print的区别

    这篇文章主要介绍了PHP中echo和print的区别,针对二者使用中常见的用法区别进行了较为深入的总结与分析,需要的朋友可以参考下 一般来说,PHP中动态输出HTML内容,是通过print 和 ech ...

  9. PMVS学习中学习c++

    最近忙于PMVS算法的优化,在这个过程中把这个写下来.仿照已有PMVS源程序,给出自己的一个实现过程. 1.fstream的使用 2.c++中的初始化 3.new创建对象与不用new的区别   我们学 ...

  10. Clojure:ZeroMQ的入门DEMO

    假设你已经知道什么是ZeroMQ(不知道的话可以看这个:http://zh.wikipedia.org/wiki/%C3%98MQ),以下就给出在Clojure中如何使用ZeroMQ(感谢此文作者:h ...