什么是消息机制
在应用程序框架中,消息与消息处理函数一一对应消息映射表,以及消息处理函数的声明和实现等代码。当窗口接收到消息时,会到消息映射表中查找消息对应的消息处理函数,然后由消息处理函数进行相应的处理。SDK编程时需要在窗口过程中一一判断消息值进行相应的处理,
消息分类
1、标准windows消息。除 WM_COMMAND 外 WM_ 开头的消息都是标准消息。例如, WM_CREATE 、 WM_CLOSE 。
2、命令消息。消息名为 WM_COMMAND ,消息中附带了标示符 ID 来区分是来自哪个菜单、工具栏按钮或加速键的消息。
3、通知消息。通知消息一般由列表框等子窗口发送给父窗口,消息名也是 WM_COMMAND ,其中附带了控件通知码来区分控件。
CWnd 的派生类都可以接收到标准 Windows 消息、通知消息和命令消息。命令消息还可以由文档类等接收。
用户自定义消息是实际上就是用户定义一个宏作为消息,此宏的值应该大于等于 WM_USER,然后此宏就可以跟系统消息一样使用,窗口类中可以定义它的处理函数。