消息映射 (MFC)

这个部分的饮用列出了所有的message mapping macros和所有的CWnd消息,映射的实例与函数实例一致。

类别

说明

WM_COMMAND消息处理程序

控件WM_COMMAND信息由用户菜单选项或用户菜单访问键生成。

子窗口通知消息处理程序

处理来自子窗口的通知消息。

WM_消息处理程序

处理WM_消息,例如WM_PAINT

由用户定义的消息处理程序

处理用户定义的消息。

(在引用中使用的术语和公约的例子请参见How to Use the Message Map Cross-Reference。)

因为 windows 是面向消息操作系统,Windows环境下编程的一大部分参与消息处理。 每次使用诸如击键或鼠标单击时,信息会发送到应用程序,然后必须处理事件。

Microsoft 基础类库提供基于消息编程的编程模型优化。 在此模型中,“消息映射”用于指定哪些函数用于为特定的类处理多种消息。 消息映射包含一个或多个宏用于指定哪些函数处理哪些消息。 例如,一个消息映射包括一个ON_COMMAND宏,会像这样:

BEGIN_MESSAGE_MAP(CMyDoc, CDocument)
   ON_COMMAND(ID_MYCMD, &CMyDoc::OnMyCommand)
END_MESSAGE_MAP()

ON_COMMAND宏用于处理由菜单、按钮、和加速键生成的命令消息。 Macros可用于映射如下的:

Windows消息

  • 控件通知

  • 用户定义的消息

命令消息

  • 注册用户定义消息

  • 用户界面更新消息

消息的范围

  • 命令

  • 更新处理程序消息

  • 控件通知

虽然消息映射宏很重要,但您通常不会直接使用它们。 这是因为当你使用消息关联消息处理函数时,属性窗口在源文件自动创建消息映射项。 任何时候你需要编辑或添加消息映射项,可以使用属性窗口。

备注

属性窗口不支持消息映射排序。必须自己编写这些消息映射项。

但是,消息映射是Microsoft 基础类库的重要组成部分。 您应了解他们做了什么,并且文档是为他们提供的。

请参见

其他资源

结构、样式、回调和消息映射