mfc消息处理和消息映射的概念

  
关键词 MFC                                          
    1 、消息处理和消息映射的概念
    2
、消息种类
    3
、常用消息
    4
、消息处理函数
    5
、消息映射
    所有 windows 应用程序都是消息驱动的,消息处理是所有 windows 应用程序的核心部分。当用户单击鼠标或改变窗口大小时,都将给适当的窗口发送消息。每个消息都对应于某个特定的事件。
一、消息处理和消息映射的概念
1
、消息
 
消息主要指由用户操作而向应用程序发出的信息,也包括操作系统内部产生的消息。例如,单击鼠标左按钮, windows 将产 WM_LBUTTONDOWN 消息,而释放鼠标左按钮将产生 WM_LBUTTONUP 消息,按下键盘上的字母键,将产生 WM_CHAR 消息。
2 windows 消息组成结构
  windows
消息由消息号和参数组成:
 
消息号
  windows
操作系统通过 32 整数标识一条 windows 消息,称为消息号。 windows 消息号具有三个特点:
  (1)
唯一性
 
唯一性指对于 windows 操作系统中的每一条消息都有一个且只有一个消息号与它相对应。由于 windows 操作系统通过消息激活相应的过程,因此消息的标识必须是唯一的。
  (2)
直观性
 
消息号在形式上表现为消息名,消息名往住直观地说明了消息的产生方式和类型,例如消息名 WM_LBUTTONDOWN 直观地表示了单击产生的消息。
  (3)
可自定义性
  windows
系统定义了一些消息号和消息名,程序员可以运用这些消息,也可以使用自已定义的窗口的消息。形式如下:
  #define
消息名 消息号
 
注意,为了不与现有的 windows 系统消息相冲突,在消息号的定义中通常采用如下:
  WM_USER+n   WM_USER
windows 操作系统定义的用户消息起始值,程序员必须从该起始值后选取消息号,例如自定义消息名为 “MESSAGE_1” “MESSAGE_2” ,可采用如下形式:
  #define MESSAGE_1 WM_USER+1
  #DEFINE MESSAGE_2 WM_USER+2
 

  windows
的消息具有以下两个参数:
  (1)
字参数 (wParam)
  (2)
长参数 (lParam)
 
字参数和长参数都是 32 位整数,用于提供消息的附带消息,是消息传递过程中参数的载体。附加信息的消息号取决于消息号。
  3
、消息处理
 
MFC 中,每个专门的处理函数旱单独处理每个消息。消息处理函数通常是某一类的成员函数,编写消息处理函数是编写框架应用程序的主要任务。
 
可以使用 ClassWizard 创建消息处事函数,然后从 Classwizard 直接跳到源文件消息处理函数,编写处理代码。
  4
、消息映射
 
可以接收消息和命令的所有框架类都有自已的消息映射。框架利用消息映射把消息、命令与它们的处理函数链接起来。从 CCmdTarget 类派生的任何类都可以有消息映射。虽然叫作 消息映射 ,但消息映射既可以处理消息,也可以处理命令。
二、消息种类
 
消息主要有三种类型,即 windows 消息,命令消息和控件通知。
 
按消息的产生可以分为四类:
  *(1)
外界输入事件产生的消息
  *(2)windows
系统向应用程序发出的消息
  *(3)
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值