Visual C++实用教程 教学课件 作者 周进 朱训林 张宏林 第3章菜单与加速键.ppt

Visual C++实用教程 教学课件 作者 周进 朱训林 张宏林 第3章菜单与加速键.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 菜单与加速键 菜单是Windows程序界面的重要元素,程序的各种操作和功能都是通过单击菜单项完成的。 一个设计合理、功能完善的菜单能够极大地方便用户的使用。加速键是菜单的辅助功能,程序使用者可以通过快捷键直接访问常用的菜单选项。 本章就介绍在程序中创建菜单和加速键的方法。 3.1 消息与事件 Windows应用程序是通过消息驱动的,因此消息和事件是Windows程序设计的核心概念。 本节将简要介绍消息和事件的处理过程,为以后的编程实践打下基础。 3.1.1 事件驱动机制 Windows作为一个以图形界面为主的操作系统,主要面向与用户的交互。 这个特点决定了在Windows上面运行的程序大部分都要以等待用户输入,并根据用户输入做出相应的操作为主要运行方式。 因此,用户输入是Windows系统中消息和事件的一个主要来源。 根据用户输入做出相应的操作,这个过程称为消息处理的过程。 同时Windows系统也将系统和程序,程序和程序之间的相互作用,抽象为另外一类消息和事件。 这样程序在运行中与系统环境的相互作用就体现为接收消息,然后对消息进行处理。 这就是事件驱动机制的主要内涵。 Windows下的应用程序的主要工作是进行消息的循环处理,通过循环等待消息的到来和事件的发生,然后对不同的消息和事件运行相关的代码,完成相应的操作。 3.1.2 消息和消息映射 Windows系统中的程序大部分都是通过消息和事件驱动的。 为了完成各种功能,Windows提供了大量的消息。 这些消息主要有以下3种类型。 ● 标准Windows消息: ● 控件通知消息: ● 命令消息: 上面的这3类消息在MFC中有统一的处理框架,即消息映射机制。 消息映射机制将消息及其处理函数表示成一一对应的表,并对这张表进行分析处理。 CCmdTarget类的派生类用于存放消息映射机制,使用消息映射必须在源程序中加入以下两方面内容。 (1)在类的头文件中加入如下语句。 DECLARE_MESSAGE_MAP() (2)在类的实现文件中加入消息映射表。 BEGIN_MESSAGE_MAP(类名, 父类名) … 消息映射表项 … END_MESSAGE_MAP() 对于标准Windows消息,在CWnd类中已经预定义了默认的处理函数,有确定的函数名,一般以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”的选项卡,即可进行编辑消息映射的设置。 3.1.3 消息处理过程 在Window

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档