这是一个使用MFC开发关于设备控制的windows应用程序

通过该项目我学到的内容:

继承的好处

应用程序的界面是与应用程序的代码有一定的对应关系的,界面中不同的控件对应不同的类,首先就是需要一个对话框,那么在资源文件里有了对话框之后,与对话框ID之对应的源文件中会有一个继承于对话框的类,之所以能够在这个对话框上随意添加删除或者修改其中的某些子窗口正是因为这种继承关系,可以在继承的基础上对原来的东西进行丰富。

 

界面与代码的关系

界面上的控件或控件的内容一般都与代码中的变量是对应着的,如果要使界面中的值传递给用于保存它的变量,则需要使用UpdateData();同样,当需要界面及时展示其对应变量最新的值,需要使用UpdateData(FALSE);。UpdateData()更新数据,其中的参数TRUE或FALSE决定了更新的方式是界面向变量传值还是变量向界面传值。

当应用程序运行起来的时候不同的事件会触发不同的消息,应用程序内部通过接收到的消息决定自己该去执行哪一个方法。这里使用类向导是一个最好的选择,减少错误,提高速度。类向导能解决的问题最好使用类向导去解决,这会减少失误。

多线程

假如你因一件事一直脱不开身,这个时候就需要来一个帮手,程序也是这样,当有些特定的需要,比如音乐播放器,聊天软件等。在播放音乐的时候之所以还能进行浏览歌曲列表等其他操作,我想这里就用到多线程。

如何响应回车事件

在类中找到PreTranslateMessage(MSG* pMsg)虚函数,然后

{

if(pMsg->message==WM_KEYDOWN)//键盘按下?

{

if(pMsg->wParam==VK_RETURN)//是回车键?

{

//响应事件

/*如何编写在指定的编辑框中响应回车事件

步骤

1-选中指定编辑框右键打开类向导

2-选中指定编辑框的ID对应的EN_SETFOCUS消息,添加处理程序并编辑代码

3-可以定义一个类成员变量,在获得焦点的对应处理函数中,给定义的变量一个特殊的值。*/

if(条件){...};

}

if(pMsg->wParam==...){...};

}

}

如果不重载OnOK会导致回车关闭窗口。

void CClistBox_testDlg::OnOK()

{

if(条件)

{

Code;

}

}

MFC回车事件的更多相关文章

  1. jquery 回车事件

    简单地记下jquery实现回车事件,代码如下: 全局: $(document).keydown(function(e){ if(e.keyCode==13){ $(".login-li in ...

  2. jquery 键盘回车事件

    <input id="search" placeholder="输入要领用的资产条码" id="scanCode" type=&quo ...

  3. js-处理回车事件

    /**回车 */ function enterkey() { //兼容IE或其它其它浏览器 var event = arguments[0] || window.event; //兼容IE或其它浏览器 ...

  4. js 监听整个页面的回车事件

    JS监听整个页面的回车事件 <script type="text/javascript"> document.onkeydown=keyDownSearch;      ...

  5. EditText 监听回车事件 避免2次触发

    // 侦听回车事件 EidtText txtSN = (EditText) findViewById(R.id.txtSN); txtSN.setOnEditorActionListener(new ...

  6. 原 JS监听回车事件

    原 JS监听回车事件 发表于2年前(2014-06-04 10:16)   阅读(6101) | 评论(0) 11人收藏此文章, 我要收藏 赞0 1月16日厦门 OSC 源创会火热报名中,奖品多多哦  ...

  7. jquery响应回车事件

    简单地记下jquery实现回车事件,代码如下: 全局: $(function(){document.onkeydown = function(e){     var ev = document.all ...

  8. js登录页面的 回车事件

    js登录页面的 回车事件 js登录页面的 回车事件(2012-12-26 10:37:03)转载▼标签: jseventkey回车事件登录 分类: js.jquery  //回车事件 第一种docum ...

  9. 兼容IE与firefox火狐的回车事件(js与jquery)

    javascript 兼容IE与firefox火狐的回车事件 复制代码代码如下: <script language="javascript"> function key ...

随机推荐

  1. 十个你需要在 PHP 7 中避免的坑

    1. 不要使用 mysql_ 类函数 终于,你不用再看到建议不要使用 mysql_ 函数的提示了.因为 PHP 7 从核心上完全移除了它们,这意味着请你移步至更好的 mysqli_ 类函数,或者更灵活 ...

  2. JsonCPP库使用

    1.使用环境DevC++ a.建立C++工程,并添加.\JsonCPP\jsoncpp-master\jsoncpp-master\src\lib_json中源文件到工程中. b.添加头文件路径 2. ...

  3. 【原生js实现一键回到顶部】

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  4. Properties文件读写问题

    项目需要在Properties配置文件中设置一些配置属性,其中包含一些中文属性.经过一上午的奋斗终于圆满解决问题. 读取Properties文件所有属性 Map<String, String&g ...

  5. python/MySQL(索引、执行计划、BDA、分页)

    ---恢复内容开始--- python/MySQL(索引.执行计划.BDA.分页) MySQL索引: 所谓索引的就是具有(约束和加速查找的一种方式)   创建索引的缺点是对数据进行(修改.更新.删除) ...

  6. python基础—函数装饰器

    python基础-函数装饰器 1.什么是装饰器 装饰器本质上是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能. 装饰器的返回值是也是一个函数对象. 装饰器经常用于有切 ...

  7. 使用multiprocessing模块创建多进程

    # 使用multiprocessing模块创建多进程 # multiprcessing模块提供了一个Process类来描述一个进程对象. # 创建子进程时,只需要传入一个执行函数和函数的参数,即可完成 ...

  8. Linux 定时执行shell脚本命令之crontab

    crontab可以在指定的时间执行一个shell脚本以及执行一系列Linux命令 例如:服务器管理员定时备份数据库数据.日志等 详解: 常用命令: crontab –e //修改 crontab 文件 ...

  9. Django REST framework+Vue 打造生鲜超市(八)

    九.个人中心功能开发 9.1.drf的api文档自动生成和 (1) url #drf文档,title自定义 path('docs',include_docs_urls(title='仙剑奇侠传')), ...

  10. enumerate给列表加序号

    #coding=utf-8#给列表加上序号,enumerate(l1),默认从0开始l1=['money','house','joo']for item in enumerate(l1,1): #pr ...