读书人

为什么小弟我得不到窗体的内容呢

发布时间: 2012-03-22 17:43:57 作者: rapoo

为什么我得不到窗体的内容呢?
我有一个窗体名字叫Tyume;在这个窗体中有edit编辑框,我想得到edit编辑框的内容,可就是得不到是哪错了?代码如下:

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);var  H: THandle;  Process, ProcessId: Cardinal;  ss:string;begin  H := FindWindow(nil, 'Tyume');  GetWindowThreadProcessId(H, ProcessId);Process := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);showmessage(string(GetWindowText(0,'tyume',20)));end;


[解决办法]
begin
H := FindWindow(nil, 'Tyume');
GetWindowThreadProcessId(H, ProcessId);
Process := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
showmessage(string(GetWindowText(0,'tyume',20)));
end;

....这代码...让我吐槽不能、OpenProcess后面你也没用、GetWindowText...我也头一次见到这么用的...
是自己的内部对象、直接Tyume.edit1.text不就好了?
外部对象么、FindWindow以后、FindWindowEx查找到EDIT的句柄再发送WM_GETTEXT消息(GetWindowText获取不到文本框内容的)
[解决办法]
findwindow查句柄,发送WM_Gettext消息,句柄找不到也可以用spy++去查

读书人网 >.NET

热点推荐