sendmessage wparam lparam的意义 !不要粘贴!!!

来源:百度知道 编辑:UC知道 时间:2024/07/05 07:10:52
你们谁会 sendmessage 中wparam 和 lparam 的使用? 看了很多资料 理解但不会用!不要用WM_CLOSE做讲解!!!!来几个陌生的做例子 教会后追加100金币
注意 注意 注意 是wparam和lparam的意义!!

SendMessage的定义如下:
Declare Function SendMessage Lib “user32" Alias “SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As any) As Long

通俗地讲:wparam和lparam是sendmessage的两个参数。也就是说,它会随着wMsg所代表的消息的不同而不同,所以理解起来有一定的难度。
下面举例说明:
1、向某窗口发送一个WM_GETTEXT消息,获得该窗口的文本
dim tempstr as string,strlong as long
tempstr = Space(255)
strlong = Len(tempstr)
rtn = Send Message(curwnd, WM _GETTEXT, strlong, tempstr)
msgbox "窗口文本为:" & left(tempstr,rtn)
'说明:WM _GETTEXT 是获取文本消息,相应地, 此时的wParam为tempstr的宽度,lParam为存放窗口文本的变量tempstr。

2、向某text1控件发送一个EM_GETLINECOUNT消息,获得文本的行数
dim GetTextLines as long
GetTextLines = SendMessage(text1.hwnd, EM_GETLINECOUNT, 0, 0)
msgbox "text1共有:" & GetTextLines