首页 > 代码库 > windows程序设计(三)

windows程序设计(三)

MFC所有封装类一共200多个,但在MFC的内部技术不只是简单的封装

MFC的内部总共有六大关键技术,架构起了整个MFC的开发平台

一.MFC的六大关键技术包括:

a).MFC程序的初始化过程

b).消息映射机制

c).运行时类型识别(RTTI)

d).动态创建

e).永久保存

f).消息传递

六大关键技术的目的是为了提高开发效率,开发者只要在局部做简单的修改,即可处理大部分窗口事物

二.SendMessage和PostMessage函数的功能

a).能够向指定的窗口内发送窗口消息。既可以是本进程内窗口也可以是其他进程的

b).既可以发送系统内部消息,消息编号的范围是:1-WM_USER-1)

     例如:WM_LBUTTONDOWN, WM_MOUSEMOVE等

c).也可以发送非系统消息(开发者定义的消息),范围号是:WM_USER-0x7FFF

d).在MFC下非系统消息映射,使用宏定义时ON_MESSAGE

三.SendMessage和PostMessage函数的区别是:

a).SendMessage是阻塞型函数,PostMessage函数是非阻塞型函数

     SendMessage用于调用指定窗口的内部程序,直到窗口程序处理完成以后再返回

     PostMessage是将一个消息寄送到一个窗口内的消息队列后就立即返回

b).两个函数的返回值不同

    LRESUL SendMessage(HWND hwnd,UINT Msg,WPARAM wParam,LPARAM lParam);

    BOOL PostMessage(HWND hwnd,UINT Msg,WPARAM wParam,LPARAM lParam);

    SendMessage的返回值是消息处理结果产生的数值,依赖于消息处理函数

    PostMessage的返回值是返送成功或失败,一般很少失败除非窗口不存在

c).跨线程或跨进程发送消息,推荐使用PostMessage函数

windows程序设计(三)