这是一个使用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. Django实现 省 市 县 自关联的下拉级联

    前端部分: 三个下拉拉菜单进行级联 <body> <select id="province" > <option value="" ...

  2. mongodb 索引的基本命令

    mongodb的索引: 在数据量超大的时候,能够极大的增快查询速率,但是会降低更新效率.建立索引: db.集合.ensureIndex({属性:1}) //1代表升序 -1代表降序 db.集合.ens ...

  3. php程序报错:PHP Core Warning/cannot open shared object file: No such file or directory

    今天开发调试程序的时候报错了,现象是有时候刷新会出现如下图: 这种主要是找不到共享库文件,即.so文件,网上主要有3种解决方法: 1. 用ln将需要的so文件链接到/usr/lib或者/lib这两个默 ...

  4. 南京邮电大学java程序设计作业在线编程第一次作业

    王利国的"Java语言程序设计第1次作业(2018)"详细 作业结果详细 总分:100 选择题得分:40  1. Java语言中,基本数据类型一共有( )种. A.16 B.2 C ...

  5. scrapy的命令行

    scrapy --help 列出帮助信息以及常用命令scrapy version 列出scrapy版本scrapy version -v 列出详细的scrapy版本以及各组件信息 scrapy sta ...

  6. 简述angular自定义过滤器在页面和控制器中的使用

    首先设置自定义过滤器. 定义模块名:angular ? 1 2 3 4 5 6 .module('myApp') .filter('filterName',function(){ return fun ...

  7. 搭建 springboot 2.0 mybatis 读写分离 配置区分不同环境

    最近公司打算使用springboot2.0, springboot支持HTTP/2,所以提前先搭建一下环境.网上很多都在springboot1.5实现的,所以还是有些差异的.接下来咱们一块看一下. 文 ...

  8. python系列之 - 并发编程(进程池,线程池,协程)

    需要注意一下不能无限的开进程,不能无限的开线程最常用的就是开进程池,开线程池.其中回调函数非常重要回调函数其实可以作为一种编程思想,谁好了谁就去掉 只要你用并发,就会有锁的问题,但是你不能一直去自己加 ...

  9. SpringIOC学习二

    Spring的IOC容器通过依赖注入DI(dependency injection)来实现程序之间的依赖关系,达到解耦的方式依赖的方式:a.基于xml文件配置的注入    * 构造函数注入    * ...

  10. STM32 - GPIO

    买了一个STM32F4的开发板,想把上面的东西重新学一下 快速过: 一.GPIO控制 void GPIO_DeInit(GPIO_TypeDef* GPIOx); //把某一个IO口恢复到默认值 /* ...