[求助]怎么从其它程序的窗口上的控件中取得数据和发送热键? 这个功能主要是从其它程序上的edit控件上取得一个文本数据,符合条件后向该窗口另外一个控件上发送CTRL+H消息.在这里对大家先感谢吧,分放到80,小弟很菜,最好是有例子,多谢. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Windows句柄、消息,请参考相关资料吧 procedure TForm1.Button1Click(Sender: TObject);var h: HWND; h1: HWND; n: Integer; buf: array[0..20] of char;begin h := FindWindow(PChar('TForm1'), PChar('RcvFrm')); // 获得主窗口 h1 := FindWindowEx(h, 0, PChar('TEdit'), nil); // 获得第一个Edit框的句柄 n := 20; SendMessage(h1, WM_GETTEXT, n, LPARAM(@buf)); // 发送消息 获取内容 ShowMessage(buf);end; procedure TForm1.Button3Click(Sender: TObject);var hw:Thandle; he: Thandle; s :pansichar;begin getmem(s,256); hw := findwindow('TForm2','Form2'); he := findwindowex(hw,0,'TEdit','Edit1'); getwindowtext(hw,s,256); showmessage(s); he := findwondowex(hw,0,'ComponentClassname','ComponentName'); sendmessage(he,WM_KEYDOWN,VK_CONTROL,0); sendmessage(he,WM_KEYDOWN,Ord('H'),0); sendmessage(he,WM_KEYUP,Ord('H'),0); sendmessage(he,WM_KEYUP,VK_CONTROL,0);end; 怎么用Delphi实现监视sqlserver2000 insert update ? 触发器? delphi能在VS2005运行吗? 关于dbgrid 急求 一个sql语句问题? 第二次不能发布的问题。 系统栏显示问题。。。 adotable 连接access 为何总是不能保存到数据库,也不报错,为什么? 如何知道程序是用了多少内存? 怎样去掉MP2声音文件一头一尾空白无声的地方呢? 小问题:在delphi中如何操作矢量图,他支持那些矢量图? 怎样做一个网络扫描系统,并且能够得到所扫描的ip和mac地址!在线等待!
var
h: HWND;
h1: HWND;
n: Integer;
buf: array[0..20] of char;
begin
h := FindWindow(PChar('TForm1'), PChar('RcvFrm')); // 获得主窗口
h1 := FindWindowEx(h, 0, PChar('TEdit'), nil); // 获得第一个Edit框的句柄
n := 20;
SendMessage(h1, WM_GETTEXT, n, LPARAM(@buf)); // 发送消息 获取内容 ShowMessage(buf);
end;
var
hw:Thandle;
he: Thandle;
s :pansichar;
begin
getmem(s,256);
hw := findwindow('TForm2','Form2');
he := findwindowex(hw,0,'TEdit','Edit1');
getwindowtext(hw,s,256);
showmessage(s);
he := findwondowex(hw,0,'ComponentClassname','ComponentName');
sendmessage(he,WM_KEYDOWN,VK_CONTROL,0);
sendmessage(he,WM_KEYDOWN,Ord('H'),0);
sendmessage(he,WM_KEYUP,Ord('H'),0);
sendmessage(he,WM_KEYUP,VK_CONTROL,0);
end;