字体
第(2/4)页
关灯
   存书签 书架管理 返回目录
数名,

    一般以On 开头,以消息名为函数名的后半部分,例如WM_PAINT 消息的处理函数为

    OnPaint(),WM_CREATE 消息处理函数是OnCreate()。这些预定义的消息处理函数根据消息

    的不同有不同的参数和返回值。

    对于控件通知消息和命令消息,一般没有默认的消息处理函数,可以由用户自定义。MFC

    建议这类函数命名应遵循一些约定,一般以On 开头,函数名中应包含该消息的简要说明,

    方便阅读代码。ClassWizard 在创建这类消息处理函数时会提供一个建议的函数名,一般无需

    修改。例如OnFileOpen()函数表明处理命令标识符ID_FILE_OPEN 的命令消息。

    本章和以后的章节都将主要利用ClassWizard 为程序添加消息处理函数。因此下面简要

    介绍一下ClassWizard 对话框,如图3-1 所示。在IDE 主菜单栏中选择“View|ClassWizard”

    菜单命令,或者在开发环境的界面中直接按快捷键Ctrl+W,即可打开“MFC ClassWizard”

    对话框。选择“Message Maps”的选项卡,即可进行编辑消息映shè的设置。

    枫叶文学网www.fywxw.com

    第3 章 菜单与加速键

    ·45·

    图3-1 消息映shè选项卡

    ClassWizard 对话框的“Message Maps”(消息映shè)选项卡中的各项功能介绍如下:

    ? Project(工程)下拉列表框:用于选择需要编辑的工程名称。

    ? Class ncom(类名)下拉列表框:用于选择需要编辑消息映shè的类的名称。选择好类

    后,在该下拉列表框 和“Project”下拉列表框的下一行将显示所选类的头文件和源文

    件路径。

    ? Object IDs(对象ID)列表框:以列表形式显示可以产生消息的对象的ID,包括菜单

    项、按钮等的ID。该列表框的第一项总是显示所选择的类。

    ? Messages(消息)列表框:列举在“Object IDs”列表框中选定的对象所能产生的各种

    消息。

    ? Member functions(成员函数)列表框:以列表形式显示选定的类中的成员函数。该列

    表框中只列出与消息处理函数以及MFC 中与消息处理有关的虚函数。前者标记为

    “W”,并在函数名后显示对应的消息映shè宏;后者标记为“V”。

    ? Add Class(添加类)按钮:单击该按钮,添加新的类到工程中。该按钮在“MFC

    ClassWizard”对话框中的所有选项卡中都存在。

    ? Add Function(添加函数)按钮:单击该按钮添加选定消息的新的消息处理函数,包

    括在消息映shè定义中添加对应的宏指令,在选定的类中添加该消息处理函数的声明和

    完成基本功能的代码实现。如果选定的消息已经有消息处理函数,则该按钮无效。对

    于对象产生的消息,单击该按钮将弹出如图3-2 所示的对话框,要求用户输入消息处

    理函数的名称,在“Member function ncom”(成员函数名称)输入框中输入函数名,

上一页 目录 下一页