怎样模拟键盘输入,比如我按'A',则在Tmemo上出现A,好象是用postMessage,大哥帮我!(5分)

  • 主题发起人 主题发起人 gdcqs
  • 开始时间 开始时间
G

gdcqs

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样模拟键盘输入,比如我按'A',则在Tmemo上出现A,好象是用postMessage,大哥帮我!
 
Tmemo是在你自己的程序里还是在别的程序里?
如果是在自己的程序里,用Tmemo的keypree事件处理就可以了,
如果是在别的程序里,用sendkey,Delphi的光盘上有这个单元,你引用一下就可以了。
 
procedure TForm1.Button1Click(Sender: TObject);
begin
postmessage(memo1.handle,wm_keydown,65,0);
end;
 
PostMessage(memo1.Handle, WM_KEYDOWN, 65, 0);
 
但是不能输出<,<=,<>等符号,谢谢!
 
‘<’的ascii码换'a'
'<='分两次,postmessage,‘<’,再'='
后面同
 
如果是在不同的程序中先做一下进程链接,然后用以上的方法就可以了.
 
我有例子,需要吗?
 
TO:tohappy
你的例子能给我一份么?谢谢了
cb-chen@163.com
 
postmessage(memo1.handle,wm_keydown,65,0);
 
// 模拟安下
PostMessage(memo1.Handle, WM_KEYDOWN, 65, 0);
// 模拟弹起
PostMessage(memo1.Handle, WM_KEYUP, 65, 0);
 
不过最好用sendmessage
因为postmessage 是 先加入消息队列排队等待处理,
sendmessage 则不用。
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
631
import
I
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部