Ctrl组合键ASCII码

^Z代表Ctrl+z                     
ASCII值 控制字符  ASCII值 控制字符  ASCII值 控制字符  ASCII值 控制字符
0(00)        NULL       8(08)        ^H         16(10)    ^P             24(18)    ^X
1(01)         ^A           9(09)        ^I            17(11)    ^Q           25(19)    ^Y
2(02)         ^B          10(0A)       ^J           18(12)    ^R           26(1A)    ^Z
3(03)        ^C           11(0B)       ^K           19(13)    ^S           27(1B)    ^[
4(04)        ^D           12(0C)       ^L           20(14)    ^T           28(1C)    ^\
5(05)        ^E           13(0D)       ^M          21(15)    ^U            29(1D)    ^]
6(06)        ^F           14(0E)       ^N          22(16)    ^V             30(1E)    ^^
7(07)        ^G           15(0F)       ^O          23(17)    ^W             31(1F)    ^_

限制输入内容 :

响应消息OnChar

void CEnglishEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if ((nChar >= && nChar <= ) || //+,-./ 0~9
(nChar >= && nChar <= ) || //A~Z
(nChar >= && nChar <= ) || //a~z
nChar == || nChar == || //";\"
nChar == || nChar == || //" SP"
nChar == 01 || nChar == 03 || //ctrl + a c
nChar == 24 || nChar == 22 //ctrl + x v )
{
CEdit::OnChar(nChar, nRepCnt, nFlags);
}
else
{
return;
}
}

代码中红色部分是实现 复制粘贴全选剪切的功能;

进过实践发现重写 PreTranslateMessage()  不能实现复制粘贴剪切的功能,可以实现全选功能,根据最上边Ctrl组合键ASCII码 来添加自己需要的功能.

VC++6.0/MFC 自定义edit 限制输入内容 响应复制粘贴全选剪切的功能的更多相关文章

  1. 【转】MFC 自定义edit 限制输入十六进制内容 响应复制粘贴全选剪切的功能

    参考地址:MFC 自定义edit 限制输入内容 响应复制粘贴全选剪切的功能   Ctrl组合键ASCII码 ^Z代表Ctrl+z                     ASCII值 控制字符  AS ...

  2. MFC对话框的Edit控件实现响应Ctrl+A全选,并实现自动/手动换行+滚动条

    首先是在Properties中设置控件属性的问题,首先必须得将Mutilines属性设为true,才能支持多行显示. 手动换行(按Enter键换行):将Want Return属性设为true 自动换行 ...

  3. VC++6.0/MFC中如何限制Edit控件输入 例子,只能输入0和1

    1.Insert -> New Class -> 在Base Class中选择CEdit,在Name中输入CMyEdit. 2.在左边的ClassView中,右键击CMyEdit,选择Ad ...

  4. VC++6.0 MFC播放视频

    注:需要在windows xp下才可以使用Windows Media Player插件,在windows 7下面会找不到该插件. 1.Windows Media Player控件的主要方法: 1)Ge ...

  5. VC 6.0 MFC关闭对话框在win7出现崩溃的情况

    Ctrl + W 掉出来class管理 添加OnDestory方法 void CPackUpItemToSetDlg::OnDestroy() { exit(1); CDialog::OnDestro ...

  6. delphi edit 中undo 和clearundo 复制粘贴等总结

    edit 和memo都有undo功能, Undo:恢复到改动前. ClearUndo:撤销掉Undo缓冲区的内容,则将无法恢复到改动前的 从该文本框的撤销缓冲区中清除关于最近操作的信息,根据应用 程序 ...

  7. VC++ 6.0 C8051F340 MFC programming note

    /************************************************************************************** * VC++ 6.0 C ...

  8. ACE的构建(VC++6.0环境)

    ACE的构建(VC++6.0环境)Windows下ACE的构建1. 将ACE-5.5.zip解压到所需的安装目录,此处以E:/为例,解压后形成ACE_wrappers文件夹,因此ACE将会存在于ACE ...

  9. 完美解决VC++6.0与Visio/office不兼容问题!!!

    话说电脑上如果装有VC++6.0编程软件和Visio或office办公软件,那么经常编程的人就会遇到下面的问题:VC打不开文件和工程,总是提示读取内存错误,点“确定”后vc自动关闭,但vc却能新建文件 ...

随机推荐

  1. 让Jackson JSON生成的数据包含的中文以unicode方式编码

      本文出处:http://blog.csdn.net/chaijunkun/article/details/8257209,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建 ...

  2. Javascript中call()和apply()的用法 ----2

    前言 call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向.call 和 apply二者的作用完全一样,只是接受 ...

  3. MySQL数据库表分区功能详解

    1.什么是表分区? mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看),一张表主要对应着三个文件,一个是frm存放表 ...

  4. 做Webservice时报错java.util.List是接口, 而 JAXB 无法处理接口。

    Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExc ...

  5. react-native run-android Starting: Intent Error type 3 Error: Activity class does not exist

    使用”react-native run-android”命令运行android应用时,如果常常出现如下错误: Starting the app (/home/xxx/soft/sdk//platfor ...

  6. 记一次网卡报错ERROR,some other host already uses address

    提示IP地址冲突,但是此IP确实没有被其他Server占用 解决如下: 编辑此文件 搜索arping 将下面几行注释掉 保存退出 激活网卡 此时IP地址已生效 下面是我的系统版本 (一般应该不会出现这 ...

  7. [BZOJ1257]余数之和

    Description 给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值 其中k mod i表示k除以i的余数. 例如j(5 ...

  8. 查看linuxCPU信息

    linux 下查看机器是cpu是几核的 几个cpu more /proc/cpuinfo |grep "physical id"|uniq|wc -l 每个cpu是几核(假设cpu ...

  9. GCD汇总

    //总结如下: //1.同步请求:不会开启新的线程 //1-1.同步请求--串行队列:不开启新线程--按照顺序执行下去 //1-2.同步请求--并发列队:不开启新线程--按照顺序执行下去 //2.异步 ...

  10. java实现同步的方法

    为何要实现同步 java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),      将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前 ...