Zeitlicher Ablauf der Komponentendarstellung
Hallo,
ich habe folgende Prozedur in Form1:
Delphi-Quellcode:
Nachdem der Dialog (Form2) wieder geschlossen wurde, wird Form1 wieder angezeigt und die Prozedur createMyFile
procedure TForm1.Button1Click(Sender: TObject);
var ergebnis : Integer; begin Form1.Hide; ergebnis := Form2.ShowModal; Form1.Show; createMyFile(ergebnis); end; 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. |
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. |
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