das hier sollte wohl auch schon reichen:
Delphi-Quellcode:
function GetLabelText(ParentHandle: HWND; LabelName: string): string;
var
pi, p, pm: ppointer;
a: integer;
obj: tPersistent;
myhandle: hwnd;
begin
Result := '';
myhandle := ParentHandle;
p := pointer(getwindowlong(myhandle, gwl_wndproc) + 9);
pm := p;
pm := pointer(integer(pm^) + 16);
for a := 0 to pinteger(integer(pm^) + 8)^ - 1 do
begin //von 0 bis componentcount
p := pointer(integer(pm^) + 4);
p := pointer(integer(p^) + 4 * a);
pi := p; //pi^ ist Zeiger auf ein Objekt
obj := tPersistent(pi^);
if obj is TLabel then
begin
if (TLabel(obj).Name = LabelName) then
begin
Result := TLabel(obj).Caption;
break;
end;
end;
end;
end;
ParentHandle =
Handle der Form, auf der sich das Label befindet
LabelName = Name des Label-Controls