已知窗体句柄,(如getactivewindow)
如何根据它获得窗体内所有控件的(如文本框)名称及其句柄?
如何根据它获得窗体内所有控件的(如文本框)名称及其句柄?
解决方案 »
- 请问一下怎么把一个整型数据26输出到一个文本文件中变为026?
- 大家给点建议把~~~~~~~~~~~~
- 请教:关于用ADOQuery连接数据库
- 为什么无论sizeof(TObject)还是sizeof(TButton),结果总是4?
- 在什么样的情况下考虑使用多层结构,什么样的情况下使用两层结构?
- delphi+SQL Server制作安装程序
- 请问的delhi中的包含字符串函数是那个,如何用?
- 請LONGFOR(雪婷) 進來領分
- 如何避免覆盖?
- 当缩小窗体后,画的图形就消失,怎么解决?
- 如何截获windows的关机消息呢?我实验了一个,不管用~
- Win9x/Win2000/XP下如何得知当前机器的BIOS是哪个厂商的?Award、AMI或者Phonix的?
BOOL EnumWindows( WNDENUMPROC lpEnumFunc,
LPARAM lParam
);
試下
不知能不能根据句柄取出控件名字(不是类名)
var
h: HWND;
begin
h:=FindWindow(nil, PChar(Edit1.Text));
if h <> 0 then
begin
EnumChildWindows(h, @EnumChildProc, 0);
end;
end;function EnumChildProc(h: hwnd; a: integer): Boolean; stdcall;
var
str: Array[0..1024] of Char;
begin
Result := true;
if h <> 0 then
begin
GetClassName(h, str, 1024);
Form1.Memo1.Lines.Add('classname='+str);
SendMessage(h, WM_GETTEXT, 1024, integer(@str[0]));
Form1.Memo1.Lines.Add('gettext='+str);
Form1.Memo1.Lines.Add('');
end;
end;