[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]
Why does everyone want to make things so difficult?  Doing it this
way, the Splash pops up and stays up until the rest of the app is
initialized (with a minimum time set in the Splash form's
CloseQueary).  No muss, no fuss, no bother.
In the Splash form's unit ->
{----------------------------------------------------------}
PROCEDURE TSplash.FormCloseQuery(Sender: TObject;
                                 VAR CanClose: Boolean);
Begin
  REPEAT UNTIL GetTickCount-Start > 5000; {minimum time 5 seconds}
  CanClose := True;
end;
PROCEDURE TSplash.FormShow(Sender: TObject);
Begin
  Start := GetTickCount;  {Start is a CARDINAL variable in the
                           Private section of the Splash form}
End;
{---------------------------------------------------}
And in the .DPR ->
begin
  Application.Initialize;
  Application.CreateForm(TMainForm, MainForm);
  Application.CreateForm(TSplash, Splash);
  Splash.Show;
  Splash.Refresh;
  {any other forms to be created and other initialization
   stuff goes here}
  Splash.Close;
  Application.Run;
end.
{--------------------------------------------------}
This is the way I do it, and it works just fine.  My Splash form is
also my About Box, so I like it to be available throughout the life
of the app.
HTH
--
Daniel J. Wojcik
It looked so nice out this morning...
...I decided to leave it out all day!
--
[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]