function TForm1.GetChildWindows(h:HWND) :HWND;
var
buf: array[0..255] of Char; {这个缓冲区是获取类名用的, 如果不需要可以删除}
begin
h := GetWindow(h, GW_CHILD); {第一个子窗口}
while h <> 0 do
begin
{下面两行是要执行的操作, 并假定只处理 TEdit}
GetClassName(h, buf, Length(buf));
//if buf = 'TSyntaxMemo' then
ShowMessageFmt('%s:%d', [buf, h]);
GetChildWindows(h); {递归}
h := GetWindow(h, GW_HWNDNEXT); {下一个子窗口}
end;
end;
var
buf: array[0..255] of Char; {这个缓冲区是获取类名用的, 如果不需要可以删除}
begin
h := GetWindow(h, GW_CHILD); {第一个子窗口}
while h <> 0 do
begin
{下面两行是要执行的操作, 并假定只处理 TEdit}
GetClassName(h, buf, Length(buf));
//if buf = 'TSyntaxMemo' then
ShowMessageFmt('%s:%d', [buf, h]);
GetChildWindows(h); {递归}
h := GetWindow(h, GW_HWNDNEXT); {下一个子窗口}
end;
end;