SendMessage 函数完全使用手册(ZT) 首先 我们了解一下Windows 的消息机制
Windows 是一个消息驱动式系 统,Windows 消息提供应用程序与应用程序之间,应用程序与Windows 系统之间进 行通信的手段
举个例子,打开记事本程序,该程序有一个 “文件“菜单
那么,在运行该程序 的时候,如果用户单击“文件菜单“里的“新建“命令, 这个动作将被Windows 所捕 捉,Windows 经过分析得知这个动作应该由我们打开的记事本程序所来处理,然后 Windows 就发送个消息 譬如我们编程的时候有时用到的 WM_COMMAND 的消息给记 事本,然后记事本就把这个消息处理掉
这个过程就是消息处理
接下来,我们把SendMessage 的完整形式讲一下 SendMessage Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long 别名 SendMessageA 说明 调用一个窗口的窗口函数,将一条消息发给那个窗口
除非消息处理完毕,否 则该函数不会返回 SendMessage 所包含4 个参数 hwnd 32 位的窗口句柄窗口可以是任何类型的屏幕对象,因为Win32 能够维 护大多数可视对象的句柄 wMsg 用于区别其他消息的常量值,这些常量可以是Windows 单元中预定 义的常量,也可以是自定义的常量 wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄 lParam 通常是一个指向内存中数据的指针
由于WParm、 lParam 和 Pointer 都是32 位的,因此,它们之间可