这是一个使用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. gradle入门(1-3)使用gradle开发一个发布版本

    需求描述 1.使用Maven central仓库.2.使用Log4j写入日志.3.包含单元测试,保证正确的信息返回,单元测试必须使用JUnit编写.4.创建一个可执行的Jar文件. 我们来看一下怎样实 ...

  2. Trensient的使用介绍

    1. transient的作用及使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过 ...

  3. Android自定义圆形图片工具类(CTRL+C加CTRL+V直接使用)

    先贴一下工具类的代码!可直接复制粘贴 public class RoundImageView extends ImageView { private Paint mPaint; //画笔 privat ...

  4. FreeMarker的用法

    freemark就是一个对静态页面上的标签进行动态解析.填充数据的一个框架. 语法(转:http://zhuyuehua.iteye.com/blog/1975251):  1. freemarker ...

  5. POJ-3169 Layout---差分约束系统+Bellman

    题目链接: https://vjudge.net/problem/POJ-3169 题目大意: 一些母牛按序号排成一条直线.有两种要求,A和B距离不得超过X,还有一种是C和D距离不得少于Y,问可能的最 ...

  6. js正则表达式入门以及常见用例

    学习正则表达式的最好方法是从例子开始,理解例子之后再自己对例子进行修改,实验.下面给出了不少简单的例子,并对它们作了详细的说明. 假设你在一篇英文小说里查找hi,你可以使用正则表达式hi. 这几乎是最 ...

  7. ecshop PC版本智能跳转到对应手机版页面

    以下适用于PC跳转到ectouch手机版的写法.其他手机端的方法类似. 修改文件 includes/lib_main.php 增加以下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

  8. 基于Mysql 5.7 GTID 搭建双主Keepalived 高可用

    实验环境 CentOS 6.9 MySQL 5.7.18 Keepalived v1.2.13 拓扑图 10.180.2.161 M1 10.180.2.162 M2 10.180.2.200 VIP ...

  9. “百度杯”CTF比赛 九月场_再见CMS(齐博cms)

    题目在i春秋ctf大本营 又是一道cms的题,打开御剑一通乱扫,发现后台登录地址,访问一看妥妥的齐博cms 记得以前很久以前利用一个注入通用漏洞,这里我贴上链接,里面有原理与利用方法详细说明: 齐博c ...

  10. hdu 4453 splay

    Looploop Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...