vb中sendmessage函数的用法 20

在vb中定义在这个函数是PrivateDeclareFunctionSendMessageLib"user32"Alias"SendMessageA"(ByValhwnd... 在vb中定义在这个函数是
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
我想向一个窗口发送一个模拟键盘操作怎么写程序??
下边是我写的一个
Private Const WM_SETTEXT = &HC

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
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetDlgItem Lib "user32" (ByVal hDlg As Long, ByVal nIDDlgItem As Long) As Long

Private Sub Command1_Click()
Dim s As String
Dim FT_hWnd As Long
Dim ID_Control_hWnd As Long

s = "你好"

FT_hWnd = FindWindow(vbNullString, "1.txt - 记事本")
If FT_hWnd = 0 Then
MsgBox "False", vbInformation, "Title"
End
End If

ID_Control_hWnd = GetDlgItem(FT_hWnd, &HF)
SendMessage ID_Control_hWnd, WM_SETTEXT, 0, ByVal s

End Sub
这个程序运行后是在文本文件里输入"你好"
我想问下如何能用这个函数给一个窗口发送一个模拟键盘操作的消息,例如我现在有一个游戏窗口"game" 然后用这个函数给这个窗口发送一个消息模拟按一下键盘上的某个按键应该怎么写程序呢??谢谢指教
展开
 我来答
百度网友eb2855c79
2006-12-31 · TA获得超过592个赞
知道小有建树答主
回答量:863
采纳率:0%
帮助的人:582万
展开全部
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
Private Const WM_SETTEXT = &HC
Private Sub Command1_Click()
SendMessage Text1.hwnd, WM_SETTEXT, 0, ByVal "hello"
End Sub
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
艳阳高照的午后
推荐于2016-02-27 · TA获得超过1万个赞
知道大有可为答主
回答量:1.2万
采纳率:97%
帮助的人:4869万
展开全部
  sendmessage函数  
  函数功能:该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。而函数PostMessage不同,将一个消息寄送到一个线程的消息队列后立即返回。
  函数原型:LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);
  
  参数:
  hWnd:其窗口程序将接收消息的窗口的句柄。如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。
  Msg:指定被发送的消息。
  wParam:指定附加的消息指定信息。
  IParam:指定附加的消息指定信息。
  返回值:返回值指定消息处理的结果,依赖于所发送的消息。
  备注:需要用HWND_BROADCAST通信的应用程序应当使用函数RegisterWindowMessage来为应用程序间的通信取得一个唯一的消息。
  消息分三类:标准消息,命令消息,通告消息.
  标准消息通过解析Msg直接发送,命令消息通过解析标准消息的Msg获得WM_COMMAND,再解析wParam从而获得命令ID号消息.
  如: MFC类里面封装了窗口句柄我们可以这样用函数,SendMessage(WM_COMMAND,ID_NAME,0);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式