Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Zeitlicher Ablauf der Komponentendarstellung (https://www.delphipraxis.net/85620-zeitlicher-ablauf-der-komponentendarstellung.html)

GrompelMompel 2. Feb 2007 11:12


Zeitlicher Ablauf der Komponentendarstellung
 
Hallo,

ich habe folgende Prozedur in Form1:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  ergebnis : Integer;
begin
  Form1.Hide;
  ergebnis := Form2.ShowModal;
  Form1.Show;
  createMyFile(ergebnis);
end;
Nachdem der Dialog (Form2) wieder geschlossen wurde, wird Form1 wieder angezeigt und die Prozedur createMyFile
braucht jetzt ca 3 Sekunden bis sie abgearbeitet ist.
Was ich nicht ganz verstehe, ist die Tatsache, dass einige Komponenten (Button1 und ein Label) auf Form1
erst angezeigt werden wenn createMyFile fertig ist.
Hat jemand einen Tip woran das liegt und u.U. sogar wie ich das verhindern kann?

Dankeschön und viele Grüße,
der etwas ratlose Grompel.

hsg 2. Feb 2007 11:17

Re: Zeitlicher Ablauf der Komponentendarstellung
 
Du sagst dem Form mit Show nur, dass die Controls Visible werden sollen, den Rest macht danach Windows durch Messages an die einzelnen Controls. Durch deine Funktion nach dem Show lässt du der Form keine Zeit diese Messages auch zu bearbeiten => es bleibt einiges nicht gezeichnet.
Ein Application.Processmessages zwischen Show und Funktionsaufruf gibt dem System die nötige Zeit.

GrompelMompel 2. Feb 2007 11:20

Re: Zeitlicher Ablauf der Komponentendarstellung
 
Genial!
Verständlich erklärt, perfekt gelöst.
Vielen Dank,
der wieder zuversichtliche Grompel ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz