1. 如何在对话框类中响应消息

1.1 基本方式

使用 WM_LBUTTONDOWN和WM_RBUTTONDOWN去演示如何使用消息

MFC给每一个消息都设计了一个函数

如果我们想响应WM_LBUTTONDOWN,就需要编写一个函数

afx_msg void OnLButtonDblClk(UINT, CPoint);

以上就是MFC消息处理的机制:

需要编写固定名称的处理函数

需要添加消息映射宏

如果以上两个东西都需要查询的话,那么就是一个噩梦。

但是有了类向导,就是天堂。

1.2 类向导

2. 如何响应控件的消息

2.1 在父窗口中响应控件消息

2.2 控件和数据变量的绑定

或者类向导中也可以添加

做了什么事情呢??

对话框类中添加了一个变量的定义

.h中

.cpp中

绑定之后,如果要使用,需要配合一个函数

UpdateData

TRUE:会将控件的数据刷新到变量中

FALSE:会将变量的数据刷新到控件上

2.3 控件和控件类对象的绑定

例子:实现的是 点击一个按钮,让另外一个按钮动起来

void CFirstDlg::OnClickedButton4()
{// TODO: 在此添加控件通知处理程序代码CRect  rc = 0;m_objButtonMoved.GetClientRect(rc);int x = rand() % 400;int y = rand() % 400;int nWidth = rc.right;int nHeight = rc.bottom;m_objButtonMoved.MoveWindow(x, y, nWidth, nHeight);
}

2.4 控件和控件派生类对象的绑定

添加完之后,我们去处理按钮的MoseMove消息

windows编写第一个MFC程序相关推荐

  1. 【(Python解释器、Pycharm)安装教程】【使用PyCharm编写第一个Python程序】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[九天课程]博客笔记汇总表[黑马程序员] 目   录 1.Python 解释器 安装 1.1.手动配置环境变量步骤 2.PyCharm 程序 ...

  2. 编写第一个Java程序:helloworld

    配置好java开发环境后,我们可以编写第一个java程序(helloworld). 在开始编写java程序时,我们要知道java程序开发的三个步骤:编写.编译.运行. 编写阶段主要是由程序员编写后缀为 ...

  3. 用java编写一个图书管理系统_手把手教你编写第一个java程序

    安装完jdk后我们就可以试着编写第一个java程序了,让我们一起来试试吧! 第一步 点击开始--所有程序--附件--记事本,新建记事本,输入以下代码: class HelloWorld { publi ...

  4. 二.编写第一个c#程序(注释,命名空间,类,Main方法,标识符,关键字,输入,输出语句,)...

    复习编写一个控制台应用程序,目标是在控制台输出"Hello World" 1.第一步,打开Visual Studio 2012以上版本(我用的是VS 2015),打开完成后出现以下 ...

  5. mac安装golang,编写第一个go程序

    一:下载pkg包,官网经常打不开,这里从云盘中下载 二:然后安装,一直next,命令行输入go version 或 go env如下说明成功 三:编写第一个go程序,新建hellow.go文件 pac ...

  6. 《教我兄弟学Android逆向01 编写第一个Android程序》

    前言 之所以准备写这一系列逆向的教程是因为有一些同学私信我说自己想学习Android逆向但是不知道怎么去学习 包括自己身边的一些计算机专业的同学 在大学里面老师讲的那些东西要么是自己不感兴趣 要么是自 ...

  7. eclipse怎么编写java程序_简单使用Eclipse编写第一个Java程序

    文章作者:姜南(Slyar)文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作. Eclipse是很常用的Java IDE,至少我们学校教Java都是用这个.下载就不 ...

  8. 用记事本编写第一个Java程序运行时 出现报错:错误: 类helloworld是公共的, 应在名为 helloworld.java 的文件中声明 public class helloworld {

    在书本上盲人摸象的摸索学习Java,Java环境配置完成,安装好eclipse后,便兴冲冲的去在记事本上编写第一个Java程序,结果给破了一盆冷水,略懵 public class helloworld ...

  9. Electron -- 编写第一个Eletron程序

    编写第一个eletron程序 1. 安装 npm install --save-dev electron 当你安装完electron后,你会发现你的项目目录下多了一个node_modules文件夹,里 ...

最新文章

  1. 1059 Prime Factors
  2. OpenGL pointsprites点精灵的实例
  3. Redux 并不慢,只是你使用姿势不对 —— 一份优化指南
  4. php 输出缓冲区清理
  5. Unity环境下RTMP推流+RTMP播放低延迟解决方案
  6. java converter转换器_在SpringMVC中设置自定义类型转换器Converter
  7. php 序列化 java_JAVA之序列化
  8. 1.什么是NoSql数据库?
  9. 2017 ACM-ICPC Asia Shenyang (ICPC亚洲沈阳赛区)
  10. 计算机辅助翻译 火云译客,中文在线翻译韩语
  11. 酷柚易汛进销存开源版对外接口
  12. 艾美捷PEG-2000 DMG解决方案
  13. 电脑桌面的计算机图标都不见了,如何解决电脑桌面的图标都不见了的问题
  14. R语言使用pcauchy函数生成柯西分布累积分布函数数据、使用plot函数可视化柯西分布累积分布函数数据(Cauchy distribution)
  15. 是的,你的AI技能正在“贬值”
  16. 移动端web界面开发
  17. IP地址常见分类:A类、B类、C类、D类、E类
  18. 无线地磁传感器可以产生哪些社会效益
  19. 【调剂】航天科工四院四部2023年度自培研究生开始调剂啦!!!
  20. tbc新服务器消息,TBC最新消息泄露:将分为4个阶段,详细内容分析

热门文章

  1. DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练测试过程全记录
  2. CV之YOLO:深度学习之计算机视觉神经网络tiny-yolo-5clessses训练自己的数据集全程记录
  3. Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(计算器简单功能)
  4. Spring Framework Reference Documentation手册官网下载地址
  5. 借助axios的拦截器实现Vue.js中登陆状态校验的思路
  6. [小巩u3d] u3d基础知识
  7. 2.羽翼sqlmap学习笔记之MySQL注入
  8. 无线研究 破解分享
  9. 【转】C#正则表达式小结
  10. STM32F103CB IAP升级时APP部分调试