正文

Windows操作系统消息大全使用详细介绍2007-04-29 22:14:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/stef/25327.html

分享到:

消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做  TMsg,   它在Windows单元中是这样声明的:   type   TMsg = packed record   hwnd: HWND; / /窗口句柄   message: UINT; / /消息常量标识符   wParam: WPARAM ; // 32位消息的特定附加信息   lParam: LPARAM ; // 32位消息的特定附加信息   time: DWORD; / /消息创建时的时间   pt: TPoint; / /消息创建时的鼠标位置   end;   消息中有什么?   是否觉得一个消息记录中的信息像希腊语一样?如果是这样,那么看一看下面的解释:   hwnd 32位的窗口句柄。窗口可以是任何类型的屏幕对象,因为Win32能够维护大多数可视对象的句柄(窗口、对话框、按钮、编辑框等)。   message 用于区别其他消息的常量值,这些常量可以是Windows单元中预定义的常量,也可以是自定义的常量。   wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄。   lParam 通常是一个指向内存中数据的指针。由于W P a r a m、l P a r a m和P o i n t e r都是3 2位的,   因此,它们之间可以相互转换。   WM_NULL = $0000;   WM_CREATE = $0001;   应用程序创建一个窗口   WM_DESTROY = $0002;   一个窗口被销毁   WM_MOVE = $0003;   移动一个窗口   WM_SIZE = $0005;   改变一个窗口的大小   WM_ACTIVATE = $0006;   一个窗口被激活或失去激活状态;   WM_SETFOCUS = $0007;   获得焦点后   WM_KILLFOCUS = $0008;   失去焦点   WM_ENABLE = $000A;   改变enable状态   WM_SETREDRAW = $000B;   设置窗口是否能重画   WM_SETTEXT = $000C;   应用程序发送此消息来设置一个窗口的文本   WM_GETTEXT = $000D;   应用程序发送此消息来复制对应窗口的文本到缓冲区   WM_GETTEXTLENGTH = $000E;   得到与一个窗口有关的文本的长度(不包含空字符)   WM_PAINT = $000F;   要求一个窗口重画自己   WM_CLOSE = $0010;   当一个窗口或应用程序要关闭时发送一个信号   WM_QUERYENDSESSION = $0011;   当用户选择结束对话框或程序自己调用ExitWindows函数   WM_QUIT = $0012;   用来结束程序运行或当程序调用postquitmessage函数   WM_QUERYOPEN = $0013;   当用户窗口恢复以前的大小位置时,把此消息发送给某个图标   WM_ERASEBKGND = $0014;   当窗口背景必须被擦除时(例在窗口改变大小时)   WM_SYSCOLORCHANGE = $0015;   当系统颜色改变时,发送此消息给所有顶级窗口   WM_ENDSESSION = $0016;   当系统进程发出WM_QUERYENDSESSION消息后,此消息发送给应用程序,   通知它对话是否结束   WM_SYSTEMERROR = $0017;   WM_SHOWWINDOW = $0018;   消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做  TMsg,   它在Windows单元中是这样声明的:   type   TMsg = packed record   hwnd: HWND; / /窗口句柄   message: UINT; / /消息常量标识符   wParam: WPARAM ; // 32位消息的特定附加信息   lParam: LPARAM ; // 32位消息的特定附加信息   time: DWORD; / /消息创建时的时间   pt: TPoint; / /消息创建时的鼠标位置   end;   消息中有什么?   是否觉得一个消息记录中的信息像希腊语一样?如果是这样,那么看一看下面的解释:   hwnd 32位的窗口句柄。窗口可以是任何类型的屏幕对象,因为Win32能够维护大多数可视对象的句柄(窗口、对话框、按钮、编辑框等)。   message 用于区别其他消息的常量值,这些常量可以是Windows单元中预定义的常量,也可以是自定义的常量。   wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄。   lParam 通常是一个指向内存中数据的指针。由于W P a r a m、l P a r a m和P o i n t e r都是3 2位的,   因此,它们之间可以相互转换。   WM_NULL = $0000;   WM_CREATE = $0001;   应用程序创建一个窗口   WM_DESTROY = $0002;   一个窗口被销毁   WM_MOVE = $0003;   移动一个窗口   WM_SIZE = $0005;   改变一个窗口的大小   WM_ACTIVATE = $0006;   一个窗口被激活或失去激活状态;   WM_SETFOCUS = $0007;   获得焦点后   WM_KILLFOCUS = $0008;   失去焦点   WM_ENABLE = $000A;   改变enable状态   WM_SETREDRAW = $000B;   设置窗口是否能重画   WM_SETTEXT = $000C;   应用程序发送此消息来设置一个窗口的文本   WM_GETTEXT = $000D;   应用程序发送此消息来复制对应窗口的文本到缓冲区   WM_GETTEXTLENGTH = $000E;   得到与一个窗口有关的文本的长度(不包含空字符)   WM_PAINT = $000F;   要求一个窗口重画自己   WM_CLOSE = $0010;   当一个窗口或应用程序要关闭时发送一个信号   WM_QUERYENDSESSION = $0011;   当用户选择结束对话框或程序自己调用ExitWindows函数   WM_QUIT = $0012;   用来结束程序运行或当程序调用postquitmessage函数   WM_QUERYOPEN = $0013;   当用户窗口恢复以前的大小位置时,把此消息发送给某个图标   WM_ERASEBKGND = $0014;   当窗口背景必须被擦除时(例在窗口改变大小时)   WM_SYSCOLORCHANGE = $0015;   当系统颜色改变时,发送此消息给所有顶级窗口   WM_ENDSESSION = $0016;   当系统进程发出WM_QUERYENDSESSION消息后,此消息发送给应用程序,   通知它对话是否结束   WM_SYSTEMERROR = $0017;   WM_SHOWWINDOW = $0018;

阅读(3724) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册