消息机制

让编程改变世界

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. 【剑指offer】面试题24:二叉搜索树的后序遍历序列

    题目: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 思路: 递归 注意,主要就是假定数组为空时结果为fa ...

  2. Palindrome Pairs 解答

    Question Given a list of unique words, find all pairs of distinct indices (i, j) in the given list, ...

  3. html基础知识总结2

    下拉列表,文本域,复选框 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  4. idea 14运行java工程报错-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.

    报错信息:Disconnected from the target VM, address: '127.0.0.1:59770', transport: 'socket' -Dmaven.multiM ...

  5. css3 渐变linear-gradient

    background: -moz-linear-gradient(top, #FC641C, #FC761C); 参数:其共有三个参数,第一个参数表示线性渐变的方向,top 是从上到下.left 是从 ...

  6. 关于linux内存使用情况

    从操作系统角度看: 系统物理内存7.5g 目前已使用7.4g(包含14m的buffer和1.6g的cache) 剩余可用内存128m 从应用程序角度看: 目前已使用5.8g 剩余可用内存1.7g(因为 ...

  7. [实战]挖掘CSRF姿势

    [-]CSRF是个什么鬼? |___简单的理解: |----攻击者盗用了你的身份,以你的名义进行某些非法操作.CSRF能够使用你的账户发送邮件,获取你的敏感信息,甚至盗走你的财产. |___CSRF攻 ...

  8. node.js + express(ejs) + mongodb(mongoose) 增删改实例

    MongoDB 安装步骤总结: 1.解压目录到d盘 mongodb 2.安装目录的下新建文件mongo.config文件 ##store data here dbpath=D:\mongodb\dat ...

  9. IOS学习笔记(四)之UITextField和UITextView控件学习

    IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...

  10. [React] React Router: Route Parameters

    A router library is no good if we have to hardcode every single route in our application. In this le ...