1.12 Windows程序的生与死 <深入浅出MFC读书笔记>
Windows程序的生与死
Windows程序的生与死主要是以下流程
1.程序初始化过程中调用CreateWindows , 为程序建立了一个窗口, 是程序在屏幕上的体现. CreateWindows在产生窗口之后会发送WM_CREATE的消息直接给窗口函数< 当一个应用程序创建窗口时,会通过消息处理函数。但是这个消息在 CreateWindow 函数返回之前被送到消息处理函数。>,于是可以在此时做些初始化操作(例如配置内存, 打开初始化文件, 读取初始数据…)
2.在程序的运行过程中, 不断利用GetMessage来从消息队列中抓取消息.< 就是一个while循环中间有GetMessage, 如果有消息就继续往下执行直到程序返回到这个while循环之中 >.如果这个消息是WM_QUIT, GetMessage()会传回0以此结束消息循环.
3.DispatchMessage()通过 Windows User 模块的协助与监督, 将消息给分发到消息处理函数, 并在此进行消息的判别与处理
4.不断进行2.和3.的操作
5.当我们去点击菜单中的Close时, 就会发送WM_CLOSE的消息给我我们的程序.
6.我们自己一般是不处理WM_CLOSE命令的, DefWindowProc()会处理这个消息, 并掉用DestoryWindow()清理窗口的数据,并产生WM_DESTORY消息.
7.我们一般不拦截WM_DESTORY消息, DefWindowProc()在处理这个消息时调用PostQuitMessage(), 发送WM_QUIT消息
8.GetMessage在获得这个消息时返回0,结束消息循环.
1.12 Windows程序的生与死 <深入浅出MFC读书笔记>相关推荐
- Windows编程 Windows程序的生与死(下)
再谈程序之"死" 记得在第二回中我对程序的"死"只是一句话带过,因为我还没有铺垫好,好了现在我们可以详细的分析一下这个过程了. 这还要从while消息循环说起, ...
- Windows编程 第四回 Windows程序的生与死(下)
致歉 很抱歉,读者看到的这篇文章将是我写的最没什么条理的一篇了,由于这一块儿内容是所有Windows程序的核心与基础,所以我分了三回来写.我想讲 得既易懂有又丰富,无奈本人才疏学浅,每每一提笔就要查很 ...
- Windows程序的生与死
Windows程序分为"程序代码"和"UI资源"两大部分最后以RC编译器整合为一个完整的EXE档案. "以消息为基础,以事件驱动(message ba ...
- Windows 程序的生与死----FROM 侯俊杰
个人感觉比孙鑫讲的要简单,孙鑫讲的有点多了,理解不如候俊杰讲的~~~ 1. 程序初始化过程中调用CreateWindow,为程序建立了一个窗口,做为程序的萤幕舞台.CreateWindow 产生窗口之 ...
- 深入浅出MFC 读书笔记1
第六章 MFC程序的生死因果 1.不同类的PreCreateWindow()成员函数都是在窗口产生之前一刻被调用,准备用来注册窗口类.如果我们指定的窗口类是NULL,那么就使用系统默认类. 第九章 消 ...
- 1.13 空闲时间处理: Onldle <深入浅出MFC读书笔记>
空闲时间处理 1.什么是空闲时间 2.空闲时间可以用来做什么 什么是空闲时间 书上的概念是这样的: 系统中没有任何消息等待处理 例如: 假如我们的我们鼠标从屏幕划过, 可能产生很多的消息, 但是电脑的 ...
- Node.js: 深入浅出Nodejs读书笔记
今天终于把朴灵老师写的<深入浅出Node.js>给学习 完了, 这本书不是一本简单的Node入门书籍,它没有停留在Node介绍或者框架.库的使用层面上,而是从不同的视角来揭示Node自己内 ...
- 深入浅出数据分析读书笔记
深入浅出数据分析读书笔记 一.数据分析引言 1.数据分析的基本流程:确定--分解--评估--决策.一个完整的分析项目可能经过多轮流程 确定:客户的论点和数据 分解:将手头的资料汇总为有用的格式 评估: ...
- 程序员的职业素养(读书笔记)-- 第一章
程序员的职业素养(读书笔记) 第1 章 专业主义 1.1 清楚你要什么 "专业主义"有很深的含义,它不但象征着荣誉与骄傲,而且明确意味着责任 与义务.这两者密切相关,因为从你无法负 ...
- 深入浅出MFC学习笔记
深入浅出MFC学习笔记 ithzhang CSDN博客:http://blog.csdn.net/ithzhang/article/category/1159054 转载于:https://blog. ...
最新文章
- 用位运算实现加减乘除
- vue-cli安装笔记
- 轻博客\博客\微博对比
- Spring的refresh()方法调用过程
- char varchar java_在数据库中varchar与char的区别
- linux的基础知识——网络套接字函数
- java中什么泛型_java中的泛型(一)
- 说说博客园的“关注”与“网摘”
- Python 下的 lambda 算子
- Linux主要的系统目录及其简单描述
- 计算机画图星星怎么画,电脑画图工具 奇奕画王使用教程(附序列号)
- 每日一字:biáng
- 专访百度AI交互设计院院长关岱松:感知类学科的尽头都是心理学 | 甲子光年
- 阿里巴巴助攻腾讯破6.2亿微商传销第一大案!涉案公众号粉丝2400
- 希腊字母英文简写与常用指代意义
- 使用for循环同时便利两个列表
- c#开发wps插件(3)部署
- 计算机毕业设计ssm健身房管理系统y7i9n系统+程序+源码+lw+远程部署
- 数据库之快照读与当前读
- linux 文件 查找内容替换,linux递归查找文件内容并替换