Ich hab nen SplashScreen, während der angezeigt wird, soll das Programm (und damit der SplashScreen) nicht schliessbar sein, der TaskManager sollte das ebenfalls nicht können.
Wird dann die Hauptform angezeigt und das Programm über einen Button dieser Hauptform beendet (es gibt einen Exit-Button), dann soll auch der SplashScreen geschlossen werden...
Ich hab das mit dem unschliessbar mit CanClose:=false; beim OnCloseQuery-Event gelöst, allerdings kann der TaskManager den Prozess immer noch killen. Ausserdem: Wenn ich dann in der Hauptform auf Exit klicke, dann wird das Programm nicht beendet, da die Form2 nicht geschlossen werden kann (wegen dem CanClose:=false)... Wie kann ich CanClose wieder auf true setzen, sobald die Hauptform angezeigt wird? Ich habe mehreres ausprobiert, es geht aber nich
Nun mal paar Codeschnipsel:
Das anzeigen der Hauptform (wird mit einem Timer im SplashScreen geregelt):
Delphi-Quellcode:
Application.CreateForm(TForm1, Form1);
Form1.ShowModal;
Das Hiden des SplashScreens (OnCreate der Hauptform):
Form2.Hide;
Wie kann ich nun beim OnClose-Ereignis der Hauptform den SplashScreen closen?
MfG Z4ppy
Edit: Noch etwas hab ich hinzuzufügen: Das mit dem TaskManager muss nur auf XP funktionieren, da das Programm schon so eingerichtet wurde, dass es eh nur unter XP geht
Es ist also wichtig, dass der TaskManager von XP das Programm nicht killen kann...