Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Form in OnCreate Anzeige anzeigen lassen - Fehler (https://www.delphipraxis.net/92426-form-oncreate-anzeige-anzeigen-lassen-fehler.html)

cruiser 19. Mai 2007 17:53

Re: Form in OnCreate Anzeige anzeigen lassen - Fehler
 
ich weiss, dass das nervig ist, aber wozu brauchst du da einen Splashscreen? Lädtst du so viele Daten um deine Anwendung zu initialisieren? dann und nur dann ist ein Splashscreen eigentlich "erwünscht".

mh... aber ich will nicht nur negativ sein. Die Splashscreen-form brauchst du wie oft? genau. 1 mal.

also bind doch die Unit dieser Form in deine MainForm ein und nimm sie aus der automatischen Erstellung heraus.
Splashscreens sollten Veränderungen anzeigen... also am besten eine public procedure UpdateStatus(const status: string); in der Splashscreen-Form erzeugen.

Was dann? Gut... im On-Create deiner Mainform erzeugst du nun also den Splashscreen:

Delphi-Quellcode:
procedure TForm.oncreate; // oder so -.-
var
  Splash: TSplashForm;
  Wait: Cardinal;
begin
  Splash := TSplashForm.Create(Self);
  Splash.Show;
Jetzt wird der Screen angezeigt. Nun willst du die Statusveränderung ja sichtbar machen:

Delphi-Quellcode:
  MachWas;
  Splash.updatestatus('Hab was gemacht!');
Jetzt wissen wir also, was beim Start so abgeht ;) was fehlt noch? Kurze Pause und weg mit dem Splash

Delphi-Quellcode:
  wait := GetTickCount + 200;
  repeat Application.ProcessMessages until GetTickCount >= wait;
  Splash.Free;
end;
Dazu solltest du in deinen Programmoptionen den Splash-Screen abschaltbar machen.

Greetz

Nagetier 19. Mai 2007 18:45

Re: Form in OnCreate Anzeige anzeigen lassen - Fehler
 
Viele Daten werden nicht gerade geladen, nur ein paar Datenblätter lade ich...
Ich werde mir deinen Code später mal genauer zu Herzen führen und schaun was ich daraus machen kann, das mit dem Abschaltbar in den Optionen ist allerdings eine gute Idee...


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:37 Uhr.
Seite 2 von 2     12   

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