Hab mir jetz selbst was gebaut:
Delphi-Quellcode:
type
TWindowStruct=record
Left,
Top,
Width,
Height:integer;
end;
function GetClientRectAbs(InHandle:HWND):TWindowStruct;
var
cliRect,
wndRect:TRect;
bWidth,
bHeight:integer;
begin
if(InHandle<>0)then
begin
GetWindowRect(InHandle, wndRect);
Windows.GetClientRect(InHandle, cliRect);
if(wndRect.Top+cliRect.Bottom<>wndRect.Bottom)then
begin
bWidth:=(wndRect.Right-wndRect.Left-cliRect.Right)div 2;
bHeight:=wndRect.Bottom-wndRect.Top-cliRect.Bottom-bWidth;
end else
begin
bWidth:=0;
bHeight:=0;
end;
Result.Left:=wndRect.Left+bWidth+1; //Lieber ein-zwei Pixel verlieren, als das Zielfenster verlassen!
Result.Top:=wndRect.Top+bHeight+1;
Result.Width:=cliRect.Right-2;
Result.Height:=cliRect.Bottom-2;
end else
begin
Result.Left:=0;
Result.Top:=0;
Result.Width:=0;
Result.Height:=0;
end;
end;
Trotzdem Danke! Dachte halt, es ginge einfacher...
Der LDer.