Einzelnen Beitrag anzeigen

rantanplan

Registriert seit: 8. Jan 2004
3 Beiträge
 
#1

SplashScreen / Timer / Messages ohne Fenster

  Alt 8. Jan 2004, 12:33
Hallo !

Ist es möglich einem Objekt, welches kein Fenster hat, eine Nachricht zu schicken ??

Ich möchte einen SplashScreen für eine Anwendung einblenden, die verschiedene DLLs linkt und andere Sachen initialisiert.
Bevor Application.Run ausgeführt wird, verarbeite ich noch andere Sachen, die unabhängig von der SplashScreen-Initialisierung sind (nebenläufig sozusagen)
Jetzt will ich aber nach Bedarf mit oder ohne SplashScreen starten.

Was funktioniert hat: ein TForm (=SplashScreen) hat einen User-Message WM_USERINIT - Handler der nach und nach mehr Dinge initilisiert (sich selbst 'posted'), während das Hauptprogramm (in ... .dpr) sich nach Application.Run vorarbeitet.

Was nicht mehr funktioniert: wenn ich den SplashScreen verstecke werden keine Nachrichten mehr verarbeitet. Dann habe ich alles in Initialiasierung ('Startup' = einfache class) und SplashScreen (=immer noch TForm) (d.h. zwei Klassen) aufgeteilt, damit ich den Splash weglassen kann.

Ich habe versucht die fensterlose initalisierungs-klasse über API-Timer zum Hauptprogramm nebenläufig zu machen. Diese Timer springen aber erst ab Application.Run an. Messages wurden vorher schon verarbeitet.

Das heisst, wie kann ich die Message-Technik für meine fensterlose Klasse verwenden ?

Ich hoffe, das war nicht alles zu verwirrend.

Danke im voraus!
  Mit Zitat antworten Zitat