消息机制 - Windows程序设计(SDK)004
消息机制
让编程改变世界
Change the world by program
内容节选:
我们来回顾一下,窗口是怎么从代码中诞生出来的?
1. 首先我们是通过给 WNDCLASS 窗口类结构各个成员赋值,从大体上定义一个窗口类出来。
2. 将这个窗口类作为参数调用 RegisterClass 函数,这个函数的作用主要是向系统注册窗口类。
3. 注册成功之后我们就可以通过 CreateWindow 生成一个具体的窗口实例,在 CreateWindow 的时候,我们可以设置更多的窗口参数,使得这个窗口实例具备更多的特征……
4. 所以完事后你要调用 ShowWindow 函数把窗口给显示到桌面上,这样我们就可以看到屏幕上有你的窗口了。
那么如果你以为 ShowWindow 只是简单的把窗口显示到桌面上,那你就错了……大家可以稍微点开 【API档案】ShowWindow,其实它的功能还有很多,但暂时我并不打算把大家搞晕,因为 ShowWindows 的更多功能是跟我们后边的知识点挂钩的。
因为不断有朋友在问,所以我这里再跟大家解释下,小甲鱼这里的【API档案】的东西你是不用去专门记住或背起来的,因为里边涉及到很多一辈子你都可能用不到的东西,我这里把这个【API档案】建立起来,主要是为了让大家以后正式编程遇到问题的时候,有地方可以查到相关的详细资料而已。这就跟学英语是一样的,正式的语法没几个,也不难,但真正需要积累的是你的单词量。
5. 接下来是 UpdateWindow,这个函数具有一定的争议,因为有童鞋发现就算我把 UpdateWindow 这个函数给注释掉,程序也可以正常的跑起来,看起来没什么两样。
既然没有什么两样?那为什么还要保留这个函数呢?直接去掉不就得了。留着它干嘛?
不知大家会不会有这样一个习惯,新建一个文件或者返回桌面完了没事就“右键->刷新”一下?其实这里调用这个 UpdateWindow 就是差不多这么一回事。
当然,我们有更充足的理由去保留这个函数,但我希望在给大家介绍完 Windows 的消息机制之后再来揭秘,下一讲里我会尝试使用调试程序的方法来给大家解释这个 UpdateWindow 的重要性。
6. 好,那么接下来就是著名的消息循环,有了这个消息循环,Windows 的消息机制才能够上传下达。
消息机制

..... 此处省略N多内容,具体请看视频讲解 ......
[buy] 获得所有教学视频、课件、源代码等资源打包 [/buy]
[Downlink href='http://kuai.xunlei.com/d/BdsUAwLxHAA3o4RT9bd']视频下载[/Downlink]
[Downlink href='http://urlxf.qq.com/?q67z2iV']备胎下载[/Downlink]
消息机制 - Windows程序设计(SDK)004的更多相关文章
- windows程序消息机制(Winform界面更新有关)
windows程序消息机制(Winform界面更新有关) 转自:http://www.cnblogs.com/blosaa/archive/2013/05/31/3109586.html 1. Win ...
- windows程序消息机制(Winform界面更新有关)--转
1. Windows程序消息机制 Windows GUI程序是基于消息机制的,有个主线程维护着消息泵.这个消息泵让windows程序生生不息. Windows程序有个消息队列,窗体上的所有消息是这个队 ...
- window消息机制二
消息机制 windows是一个消息驱动的系统,会有一个总的系统消息的队列,鼠标.键盘等等都会流入到这个队列中,同时会为每个线程维护一个消息队列(注意默认是有GUI调用的线程才有,对于没有GUI或者窗口 ...
- C#中的WinForm的消息机制简述,及消息机制下Invoke,和BeginInvoke的使用和区别
在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate,至于委托的本质请参考我的另一随笔:对.net事件的看法. 一.为什么Control类提供了Invoke和Begin ...
- 消息机制2 - Windows程序设计(SDK)005
消息机制2 让编程改变世界 Change the world by program 内容节选: 关于消息机制,还有三点需要补充: 消息队列是FIFO的形式 WM_PAINT,WM_TIMER 和 WM ...
- Windows程序设计2(消息机制、菜单)
一 .小记; PostQuitMessage(0); 产生WM_QUIT消息给进程队列,且立即返回,同时使得消息循环退出,使得进程终止.(其实它通过PostMessage(hWnd,WM_QUIT,0 ...
- Windows消息机制要点
1. 窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wP ...
- 转:Windows消息机制要点
Windows消息机制要点 1. 窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ...
- Windows消息机制详解
消息是指什么? 消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉.一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向 Windows发出一个通知,告诉应用 ...
随机推荐
- C写的扫描器源码
Title:C写的扫描器源码 --2010-10-27 20:02 无意间看见的一个源代码,弄回来读下. ----------------------------------------------- ...
- PCB走线和过孔的过流能力
PCB走线的载流能力与以下因素有关:线宽.线厚(铜箔厚度).容许温升.PCB走线越宽,载流能力越大. 近似计算公式: I=KT0.44A0.75 (K为修正系数,一般覆铜线在内层时取0.024,在外层 ...
- 转: linux下错误的捕获:errno和strerror的使用
经常在调用linux 系统api 的时候会出现一些错误,比方说使用open() write() creat()之类的函数有些时候会返回-1,也就是调用失败,这个时候往往需要知道失败的原因.这个时候使用 ...
- python手记(38)
runfile(r'K:\testpro\testopencv.py', wdir=r'K:\testpro') http://blog.csdn.net/myhaspl myhaspl@qq.com ...
- easyUI treeGrid 的小例子
今天由于业务的需要,于是采用了easyui的的treeGrid控件. <table title="Folder Browser" class="easyui-tre ...
- 【HDOJ】1403 Longest Common Substring
后缀数组2倍增可解. #include <cstdio> #include <cstring> #include <cstdlib> #define MAXM 28 ...
- memory_target not supported on this system
- (转)重置Mac OS X管理员密码
忘记Mac管理员密码怎么办?别担心,办法总会有的. [方法一] 开机按住option,选择Recovery HD(Snow Leopard插入光盘开机按住C) Snow Leopard系统:进入后在上 ...
- 推荐:室内定位API - indoor Location API
indoor.rs 公司近日开放了API,包括免费free的,收费fee的版本. 详情见这里,价格不是很贵哦 Open API支持Android/iOS等移动平台 提供工具,帮助进行地图和WiFi信号 ...
- 怎么给iOS项目打包
1 首先要选中项目中的真机測试,不要模拟器 ,然后从上边的菜单条中找product watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc29tZXJhaW43 ...