ich werfe hier mal folgenden source in den raum ...
Delphi-Quellcode:
procedure WMNCCALCSIZE(
var Msg : TWMNCCalcSize);
message WM_NCCALCSIZE;
....
procedure TfrMDIChild.WMNCCalcSize(
var Msg : TWMNCCalcSize);
var
NCRect: TRect;
begin
if not IsIconic(
Handle)
then begin
NCRect := Msg.CalcSize_Params^.rgrc[0];
inc(NCRect.Top, 28);
inc(NCRect.Left, 4);
dec(NCRect.Right, 4);
dec(NCRect.Bottom, 4);
Msg.CalcSize_Params^.rgrc[0] := NCRect;
end;
end;
so kann an bei einem Formular den ClientBereich für die Controls definieren - also im Clientbereich definiert jetzt 0,0 den Punkt 4,28 fürs formular gesehen
das sollte eigentlich auch für alle anderen controls funken ...