Советы по Delphi

         

Восстановление размера окна


Существует ли какой-либо способ получения координат формы, которые она должна иметь при восстановлении с максимально распахнутого состояния?

Используйте API Функцию GetPlacement. Следующая выдержка из кода моего компонента TBag демонстрирует это:

    procedure TBag.SetFormPlace(AName: string; AForm: TForm); var s: string[99]; Place : TWindowPlacement; begin Place.length :=SizeOf(TWindowPlacement); if not GetWindowPlacement(AForm.Handle,@Place) then exit; with Place do begin s := IntToStr(Flags);

s := AppendS(s,ShowCmd); s := AppendS(s,ptMinPosition.X); s := AppendS(s,ptMinPosition.Y); s := AppendS(s,ptMaxPosition.X); s := AppendS(s,ptMaxPosition.Y); s := AppendS(s,rcNormalPosition.Left); s := AppendS(s,rcNormalPosition.Top); s := AppendS(s,rcNormalPosition.Right); s := AppendS(s,rcNormalPosition.Bottom); end; SetString(AName,s); end;

- Mike Orriss [000876]



Содержание раздела