在 VC++6 的 WINUSER.H 中有全部的 常数 和说明。 常用的 如下:
B
BM_CLICK
BM_GETCHECK
BM_GETSTATE
BM_SETCHECK
BM_SETSTATE
C
CB_ADDSTRING
CB_DELETESTRING
CB_GETCOUNT
CB_GETCURSEL
CB_GETDROPPEDSTATE
CB_GETLBTEXT
CB_GETLBTEXTLEN
CB_INSERTSTRING
CB_RESETCONTENT
CB_SETCURSEL
CB_SHOWDROPDOWN
E
EM_CANUNDO
EM_GETFIRSTVISIBLELINE
EM_GETLINE
EM_GETPASSWORDCHAR
EM_GETSEL
EM_LINEINDEX
EM_LINELENGTH
EM_REPLACESEL
EM_SETPASSWORDCHAR
EM_SETSEL
EM_UNDO
I
IPM_CLEARADDRESS
IPM_GETADDRESS
IPM_ISBLANK
IPM_SETADDRESS
IPM_SETFOCUS
IPM_SETRANGE
L
LB_ADDSTRING
LB_DELETESTRING
LB_GETCOUNT
LB_GETCURSEL NEW
LB_GETSEL NEW
LB_GETSELCOUNT NEW
LB_GETSELITEMS NEW
LB_GETTEXT
LB_GETTEXTLEN
LB_INSERTSTRING
LB_RESETCONTENT
LB_SETCURSEL NEW
LB_SETSEL NEW
M
MM_MCINOTIFY
W
WM_CLOSE
WM_COMMAND
WM_GETTEXT
WM_GETTEXTLENGTH
WM_HELP
WM_INITMENU
WM_LBUTTONDBLCLK
WM_LBUTTONDOWN
WM_LBUTTONUP
WM_MBUTTONDBLCLK
WM_MBUTTONDOWN
WM_MBUTTONUP
WM_MOUSEMOVE
WM_RBUTTONDBLCLK
WM_RBUTTONDOWN
WM_RBUTTONUP
WM_SETTEXT
WM_SYSCOMMAND
WM_TIMER
B
BM_CLICK
BM_GETCHECK
BM_GETSTATE
BM_SETCHECK
BM_SETSTATE
C
CB_ADDSTRING
CB_DELETESTRING
CB_GETCOUNT
CB_GETCURSEL
CB_GETDROPPEDSTATE
CB_GETLBTEXT
CB_GETLBTEXTLEN
CB_INSERTSTRING
CB_RESETCONTENT
CB_SETCURSEL
CB_SHOWDROPDOWN
E
EM_CANUNDO
EM_GETFIRSTVISIBLELINE
EM_GETLINE
EM_GETPASSWORDCHAR
EM_GETSEL
EM_LINEINDEX
EM_LINELENGTH
EM_REPLACESEL
EM_SETPASSWORDCHAR
EM_SETSEL
EM_UNDO
I
IPM_CLEARADDRESS
IPM_GETADDRESS
IPM_ISBLANK
IPM_SETADDRESS
IPM_SETFOCUS
IPM_SETRANGE
L
LB_ADDSTRING
LB_DELETESTRING
LB_GETCOUNT
LB_GETCURSEL NEW
LB_GETSEL NEW
LB_GETSELCOUNT NEW
LB_GETSELITEMS NEW
LB_GETTEXT
LB_GETTEXTLEN
LB_INSERTSTRING
LB_RESETCONTENT
LB_SETCURSEL NEW
LB_SETSEL NEW
M
MM_MCINOTIFY
W
WM_CLOSE
WM_COMMAND
WM_GETTEXT
WM_GETTEXTLENGTH
WM_HELP
WM_INITMENU
WM_LBUTTONDBLCLK
WM_LBUTTONDOWN
WM_LBUTTONUP
WM_MBUTTONDBLCLK
WM_MBUTTONDOWN
WM_MBUTTONUP
WM_MOUSEMOVE
WM_RBUTTONDBLCLK
WM_RBUTTONDOWN
WM_RBUTTONUP
WM_SETTEXT
WM_SYSCOMMAND
WM_TIMER
解决方案 »
- U盘不自动运行怎么办呢?
- 1除以100000的问题
- 怎么处理数据加密后的查询
- [VB6]如何查看WINXP的序列号
- 请教SQL查询语句
- 用winsock控件建立端口为23的连接,发送命令为什么什么都不发返回?
- leonfeni,问题已解决,答应给分!
- 我用VC做了个控件,该控件需要自己具有窗体(运行中需要自己窗体的HWND),在VC下调用正常,而在VB中使用此控件,却没有自身的窗体。应该怎么使用?
- 请问怎么样在程序中修改控制面板的中的当前时间?
- VB是不是没有C/C++等要好呢?
- ###我总在回答别人的问题,我的问题为什么没人理!!!555555555
- sonicdater(发呆呆),谢谢你的帮助,请进来拿分。
http://ygyuan.3322.net
不过是 e 文 的。
CSDN首页 | 新闻聚焦 | 共享软件 | 俱乐部 | 开发文档 | 专家门诊 | 招聘求职 | Linux园地 | 程序员杂志
--------------------------------------------------------------------------------
我要回复 | 我感兴趣 | 打印贴子 | 推荐给朋友 | 关闭窗口
主 题:谁有SendMessage的详细用法?最好中文的,顺便带上参数说明,谢谢
作 者:MonkeyLin
所属论坛:Visual Basic
问题点数:50
回复次数:14
发表时间:2001-8-2 19:21:20
回复贴子:
回复人: fishboyok(fish) (2001-8-2 19:29:56) 得5分
去下载一个api函数的说明书。
回复人: fishboyok(fish) (2001-8-2 19:32:08) 得0分
给你一个网址
http://jszb.jsagri.gov.cn/VB/default.htm
去淘金吧。
回复人: DTWUJP(建平.net) (2001-8-2 19:40:15) 得0分
找袁飞的API帮助。里面很详细。http://ygyuan.go.163.com
回复人: kailong(凯龙) (2001-8-2 21:03:42) 得10分
SendMessage, SendMessageBynum, SendMessageByString VB声明
Declare Function SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)
Declare Function SendMessageBynum& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)
Declare Function SendMessageByString& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String)
说明
调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。
返回值
Long,由具体的消息决定
参数表
参数 类型及说明
hwnd Long,要接收消息的那个窗口的句柄
wMsg Long,消息的标识符
wParam Long,具体取决于消息
lParam Any,具体取决于消息
回复人: tg123(T.G.) (2001-8-2 22:53:53) 得10分
SendMessage
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
说明
调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, SendMessageByString是该函数的“类型安全”声明形式
返回值
Long,由具体的消息决定
参数表
参数 类型及说明
hwnd Long,要接收消息的那个窗口的句柄
wMsg Long,消息的标识符
wParam Long,具体取决于消息
lParam Any,具体取决于消息
回复人: xxlroad(土八路) (2001-8-2 23:14:17) 得0分
www.allapi.net
回复人: MonkeyLin(没有MSDN的小猴子) (2001-8-3 21:42:20) 得0分
up
回复人: xyjdn(项有建^_^) (2001-8-3 23:02:31) 得10分
袁飞的API帮助【函数】
SendMessage【操作系统】
Win9X:Yes
WinNT:Yes【声明】
SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long【说明】 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum,
SendMessageByString是该函数的“类型安全”声明形式 【返回值】 Long,由具体的消息决定 【其它】
【参数表】
hwnd ----------- Long,要接收消息的那个窗口的句柄 wMsg ----------- Long,消息的标识符 wParam --------- Long,具体取决于消息 lParam --------- Any,具体取决于消息
函数功能:该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。而函数PostMessage不同,将一个消息寄送到一个线程的消息队列后立即返回。 函数原型:LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam); 参数: hWnd:其窗口程序将接收消息的窗口的句柄。如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。 Msg:指定被发送的消息。 wParam:指定附加的消息指定信息。 IParam:指定附加的消息指定信息。 返回值:返回值指定消息处理的结果,依赖于所发送的消息。 备注:需要用HWND_BROADCAST通信的应用程序应当使用函数RegisterWindowMessage来为应用程序间的通信取得一个唯一的消息。 如果指定的窗口是由调用线程创建的,则窗口程序立即作为子程序调用。如果指定的窗口是由不同线程创建的,则系统切换到该线程并调用恰当的窗口程序。线程间的消息只有在线程执行消息检索代码时才被处理。发送线程被阻塞直到接收线程处理完消息为止。 Windows CE:Windows CE不支持Windows桌面平台支持的所有消息。使用SendMesssge之前,要检查发送的消息是否被支持。 速查:Windows NT:3.1及以上版本:Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:winuser.h;输入库:user32.lib;Unicode:在Windows NT环境下以Unicode和ANSI方式实现。
回复人: MonkeyLin(没有MSDN的小猴子) (2001-8-4 9:15:13) 得0分
偶要参数表^
回复人: hnlzh(吸海垂虹) (2001-8-4 9:17:14) 得0分
gz
回复人: mwenyuan() (2001-8-4 9:21:31) 得0分
SendMessage参数众多,我看要以千记,会有人整理参数表吗
回复人: Frank_Xu() (2001-8-4 9:28:32) 得5分
SendMessage()是把消息添加到消息队列,其实就有点象你寄信一样;它是本线程等待,直至send的哪个事件完成才返回.
注:SendMessage()一个WM_QUIT给模态对话框是无效的
hwnd ---- Long,要接收消息的那个窗口的句柄
wMsg ---- Long,消息的标识符
wParam 及lParam不固定依具體消息而定
具體wParam,及lParam想了解的話,要有MSDN,直接搜索該消息,你就會查到對應的wParam及lParam表示的意思.
回复人: Frank_Xu() (2001-8-4 9:30:37) 得0分
沒有MSDN,如果可以上網的話可以去微軟 http://msdn.microsoft.com
回复人: Frank_Xu() (2001-8-4 10:03:28) 得10分
SendMessage函數原始聲明:
LRESULT SendMessage(
HWND hWnd, // handle of destination window
UINT Msg, // message to send
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);順便給出SendMessage與PostMessage的區別:
SendMessage()等待消息觸發後返回,才繼續執行,否則阻塞!
PostMessage()發送消息,不管有無觸發該消息都繼續執行下面操作!
任何消息用PostMessage時以及大多數被Windows發送給視窗的消息,都要經過消息隊列,
但SendMessage發送的消息不經過消息隊列,直接调用WindowProc()
若消息爲非隊列消息,PreTranslateMessage()截不到,不會被調用.(希望以上資料對各位讓你會用而且讓你懂)
--------------------------------------------------------------------------------
你还没有登录:昵称: 密码: 免费注册
我要回复:(请您对您的言行负责,遵守中华人民共和国有关法律、法规,尊重网上道德)
返回问题 | 关闭窗口
美达美简介 广告服务 英语步步高 程序员大本营 百联美达美科技有限公司 版权所有
你好呀:)
QQ号给你了。
你的号了???