Einzelnen Beitrag anzeigen

günni0
(Gast)

n/a Beiträge
 
#11

AW: Oncreate beenden und function aufrufen (ohne TTimer)

  Alt 12. Apr 2018, 18:49
Zitat:
Hab das kurz mit ShowMessage getestet und das wird aufgerufen noch bevor man das Form sieht.
Dann mach es so

Delphi-Quellcode:
const
 WM_FORM_VISIBLE = WM_USER + 1;

private
 FormInitialised: Boolean;
 procedure WMFormVisible(var msg: TMessage); message WM_FORM_VISIBLE;
end;

implementation

procedure TForm1.WMFormVisible(var msg: TMessage);
begin
 >>> hier deine showmessage zum testen <<< // Wird erst verarbeitet, wenn das Formular sichtbar ist. Aber meiner Meinung nach sollte man sich nicht von irgendwelchen Sichtbarkeiten abhängig machen.
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
 if not FormInitialised then
  begin
   FormInitialised := True;
   PostMessage(Form1.Handle, WM_FORM_VISIBLE, 0, 0);
  end;
end;

Geändert von günni0 (12. Apr 2018 um 18:52 Uhr)
  Mit Zitat antworten Zitat