Thema: Delphi Ereignis OnAfterShow

Einzelnen Beitrag anzeigen

Eurowig
(Gast)

n/a Beiträge
 
#1

Ereignis OnAfterShow

  Alt 10. Mär 2009, 10:31
Hi.
Eigentlich ein simples Problem.
Ein Form bekommt zur Designzeit das Propertie WindowsState = wsMaximized zugewiesen. Ich will die Größe meiner Form nach dem es das erste mal sichtbar wurde wissen.

Aber wie kann ich Height und Width des Forms rausfinden. In OnShow bekomme ich die alten Werte (also die Größe zur Designzeit). Wenn man in die Delphi Sourcen schaut, wird auch klar warum. Das Ereignis OnShow wird vor dem Zuweisen von WindowState gesendet.

Bisher meine Lösung, im OnResize einen Zähler abfragen:
Delphi-Quellcode:
procedure TForm1.FormResize(Sender: TObject);
begin
  if ResizeCounter = 2 then // OnReszie wird beim ersten anzeigen 2-mal ausgelöst
  begin
    ... // Tu was, z.B. Controls anordnen
  end;

  Inc(ResizeCounter);
end;
Leider haben die Delphientwickler ein 'OnAfterShow' vergessen.
Gibt es da eine schönere Lösung?

thx
  Mit Zitat antworten Zitat