Je Application.MainForm is het eerste form dat met Application.CreateForm creëert. De truc die bij een 'splash screen' veel wordt toegepast is de volgende. Je creëert als eerste je splash screen, maar dat doe je niet met Application.CreateForm. In plaats daarvan gebruik je de gewone constructor van het Form zelf:
code:
1
2
3
4
| Splash := TSplash.Create(Application); // FormStyle moet meestal fsStayOnTop zijn
Splash.Show;
Application.CreateForm(TMain, Main);
Application.Run; |
Main is nu je Application.MainForm. Het splash screen kun je bijvoorbeeld sluiten in OnActivate van Main. Niet vergeten Splash.Free aan te roepen (of beter: FreeAndNil(Splash)) om alvast wat resources vrij te maken.
Ook hierbij geldt het nadeel dat je handmatig in je project source file moet klooien, maar het toont wel hoe het mechanisme van je main form werkt. Het is trouwens de door Borland gesuggereerde oplossing.
Een goede grap mag vrienden kosten.