如何实现Vb中的Sendkeys?(15分)

  • 主题发起人 主题发起人 srw
  • 开始时间 开始时间
S

srw

Unregistered / Unconfirmed
GUEST, unregistred user!
有没有类似VB中的Sendkeys函数?<br>windows API中的postmessage怎么用?(最好详细点)<br>
 
postmessage(要接收消息的任务句柄,要传送的消息,收消息参数,第二消息参数);<br>把消息送到给定的程序的消息队列,不等应用程序处理该消息就返回<br><br>vb里面的sendkeys是干什么用的,没用过vb,别说我土:)
 
&nbsp; &nbsp;用API函数keybd_event就可以模拟键盘动作了.与sendkeys实现的功能完全一<br>样.还有一个函数mouse_event可以模拟鼠标动作.
 
Delphi 4.0安装盘上有SendKey的单元,文件查找一下
 
用这个吧:<br>&nbsp; &nbsp; TControl.Perform(wm_keydown,WParam, LParam);
 
对!delphi的盘上有sendkey单元!<br>在根目录下/info/Sendkey/下,很简单!<br>还有一堆netmanage的ocx,没用过!
 
为什么所有的sendkeys都不支持汉字???如何解决.
 
什么sendkeys支持汉字?<br><br>你是说自动往edit 里填汉字?
 
vb的sendkeys支持汉字,比如可以这样用:sendkeys "你好",但我找的Delphi 的<br>所有的sendkeys都不支持汉字 .
 
用PostMessage可以,例如:<br>PostMessage(Self.Handle,WM_SYSKEYDOWN,VK_TAB,0)<br>可以发送一个TAB键。<br>第一参数是要发送键的控件句柄,<br>第二参数是Windwos消息类型,WM_SYSKEYDOWN 按键<br>第三参数是要发送键的键值,在Windows单元中好象有,<br>第四参数用0就可以了。<br>
 
churchill老兄的方法我试过了,不行。比如我打开计算器,我向它发送1+1=这几个<br>键,并没有任何反应。<br>我DOWN了一个Sendkeys控件,但对中文无效,还请大家继续讨论。
 
还有人知道答案吗?????/
 
还有人知道答案吗?
 
有个Sendkey构件
 
你可以试试直接往键盘缓冲区里填数据,不过键盘缓冲区的地址<br>我忘了,待我回去查一查
 
多人接受答案了。
 
后退
顶部