消息机制

让编程改变世界

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的更多相关文章

  1. windows程序消息机制(Winform界面更新有关)

    windows程序消息机制(Winform界面更新有关) 转自:http://www.cnblogs.com/blosaa/archive/2013/05/31/3109586.html 1. Win ...

  2. windows程序消息机制(Winform界面更新有关)--转

    1. Windows程序消息机制 Windows GUI程序是基于消息机制的,有个主线程维护着消息泵.这个消息泵让windows程序生生不息. Windows程序有个消息队列,窗体上的所有消息是这个队 ...

  3. window消息机制二

    消息机制 windows是一个消息驱动的系统,会有一个总的系统消息的队列,鼠标.键盘等等都会流入到这个队列中,同时会为每个线程维护一个消息队列(注意默认是有GUI调用的线程才有,对于没有GUI或者窗口 ...

  4. C#中的WinForm的消息机制简述,及消息机制下Invoke,和BeginInvoke的使用和区别

    在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate,至于委托的本质请参考我的另一随笔:对.net事件的看法. 一.为什么Control类提供了Invoke和Begin ...

  5. 消息机制2 - Windows程序设计(SDK)005

    消息机制2 让编程改变世界 Change the world by program 内容节选: 关于消息机制,还有三点需要补充: 消息队列是FIFO的形式 WM_PAINT,WM_TIMER 和 WM ...

  6. Windows程序设计2(消息机制、菜单)

    一 .小记; PostQuitMessage(0); 产生WM_QUIT消息给进程队列,且立即返回,同时使得消息循环退出,使得进程终止.(其实它通过PostMessage(hWnd,WM_QUIT,0 ...

  7. Windows消息机制要点

    1. 窗口过程     每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wP ...

  8. 转:Windows消息机制要点

    Windows消息机制要点 1. 窗口过程     每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ...

  9. Windows消息机制详解

    消息是指什么?      消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉.一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向 Windows发出一个通知,告诉应用 ...

随机推荐

  1. Ubuntu命令行下安装,卸载软件包的过程[转]

    一.Ubuntu中软件安装方法 1.APT方式 (1)普通安装:apt-get install softname1 softname2 …; (2)修复安装:apt-get -f install so ...

  2. 用GOACCESS分析NGINX日志

    参考URL: http://4b3r.com/goaccess-analyze-nginx-access-log/64/ http://jesuspan.sinaapp.com/crontab%E6% ...

  3. MCS-51单片机I/O端口的存取

    MCS-51单片机通常有4个8位I/O端口, 向各端口的写数据均写入到对应端口的锁存器中, 但对各端口的读操作却有两个方式:读锁存器和读引脚 1 读-修改-写操作    Pn(指P0,P1,P2,P3 ...

  4. 是用VLC API将RTSP流convert为视频文件

    一直在文档中找不到,接口设计的也不大好.不过终于在stackoverflow上找到解决方案了. 原来在LIbVLC库实例化的时候就需要传递相关的参数.我的代码大致是这样实现: const char * ...

  5. .sdp文件格式介绍

    最近做RTSP流播放,需要了解.sdp这种会话描述的文件格式,当然,里面的具体语法有SDP解析器来分析.但是我需要大概了解一些字段的意思,它是文本描述的,采用key value的形式描述. https ...

  6. Windows服务器Pyton辅助运维--02.远程重启IIS服务器

    Windows服务器Pyton辅助运维 02.远程重启IIS服务器 开发环境: u  Web服务器: Windows Server 2008 R2 SP1 IIS 7.5 u  运维服务器: Pyth ...

  7. DLL模块:extern "C"的简单解析

    1.揭密extern "C" extern "C"包含双重含义,从字面上即可得到:首先,被它修饰的目标是 "extern”的:其次,被它修饰的目标是 ...

  8. HDU_2019——向排序好的数列中插入数

    Problem Description 有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数x,请将该数插入到序列中,并使新的序列仍然有序.   Input 输入数据包含多 ...

  9. MySQL的数据库引擎的类型

    你能用的数据库引擎取决于mysql在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另外两种类型INNO ...

  10. html——基础样式篇(1)

    格式化标签 <b>字体加粗标签 <i>字体斜体标签 <sub>下标标签 <sup>上标标签 <del>删除标签 //这在商品特价时常使用 a ...