• 1.摘要
  • 2.基本信息
  • 3.简介
  • 4.消息内容
  • 5.消息系统
  • 6.消息实现
  • 6.1.消息概述
  • 6.2.句柄
  • 6.3.消息传送
  • 6.4.消息循环
  • 6.5.消息事件

windows消息处理机制

消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。

基本信息

  • 中文名

    windows消息处理机制

  • 组成

    消息队列应用程序·消息循环

  • message

    用于区别其他消息的常量值

  • hwnd

    32位的窗口句柄

简介

消息本身是作为一个记录传递给应用程序的,这个记录(一般在 C/C++/汇编 中称为“结构体”)中包含了消息的类型以及其他信息。例如,对单击鼠标所产生的消息来说,这个记录(结构体)中包含了单击鼠标的消息号(WM_LBUTTONDOWN)、单击鼠标时的坐标(由X,Y值连接而成的一个32位整数)。这个记录类型叫做TMsg。

在Delphi的Windows单元中是这样声明的:

type

TMsg = packed record

hwnd: HWND; / /窗口句柄

message: UINT; / /消息常量标识符

wParam: WPARAM ; // 32位消息的特定附加信息(以前是16位)

lParam: LPARAM ; // 32位消息的特定附加信息

time: DWORD; / /消息创建时的时间

pt: TPoint; / /消息创建时的鼠标位置

end ;

其中TPoint定义是:

TPoint= record

x:integer;

y:integer;

end;

在C语言中的定义是:

typedef struct Msg