如何实现这个功能,在程序中实现向某个文本框模拟键盘输入字符,比如我不通过键盘输入,而通过程序实现,
解决方案 »
- delphi登陆
- 高分!在线等!!用opengl画一个圆柱体
- 怎么获取当前登陆WINDOWS的用户名?
- 问问给别人做过软件的朋友,像这样的程序得要多少钱呀!!!
- 高分求Install Sheild for Dephi
- 高分请教,在线放分!不够在加:( 急呀!
- 不能对控件加代码???
- 有关InstallShield的问题,在线急等!
- adoquery1的sql语句中怎么用insert的结果也是插入在尾部呢??不能从中间插入吗??
- delphi2005中第三方控件ZlibEX怎么用?
- 这样的视图怎么定义!!!!一张表中有多列要用另外一张表中的实际值替换??水园里还是有不少的SQL高手的吧:)
- 如何判断系统分区是否存在
begin
SendMessage(Edit1.Handle,WM_CHAR,65,0);
end;
向键盘缓冲区发送字符。
可以通过消息
单个字符的用1楼方法,字符串可以用
procedure TForm1.Button1Click(Sender: TObject);
begin
SendMessage(Edit1.Handle,WM_SETTEXT,0,longint(pchar('hahahahaha')));
end;或者通过模拟按键
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.SetFocus;
keybd_event(65,0,KEYEVENTF_EXTENDEDKEY or 0,0);
keybd_event(65,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
keybd_event(66,0,KEYEVENTF_EXTENDEDKEY or 0,0);
keybd_event(66,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
keybd_event(67,0,KEYEVENTF_EXTENDEDKEY or 0,0);
keybd_event(67,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
end;
这种方法稍嫌笨了些,不过我还是比较喜欢用的,因为设置完焦点就可以发送,嘿嘿