Bild einfügen
-
Hi,
ich habe ein Bild mit dem Objectinspector in mein Formular eingefügt bekomme es da auch angezeigt. Doch nach dem übersetzen ist das Bild nicht zu sehen.
DasProblem liegt daran das das Bild bevor das eigentliche Form gezeigt wird auf einem eigenen Form 2 Sekunden zu sehen sein soll. Ich verwende folgenden Code[cpp]
try
{
Application->Initialize();
Application->CreateForm(__classid(TFormMain), &FormMain);
Application->CreateForm(__classid(TFStartScreen), &FStartScreen);
Sleep(2000);
FStartScreen->Close();
FormMain->Show();
Application->Run();
}MfG
-
Hallo
Offenbar versuchst du einen Splashscreen anzuzeigen. Dazu gibts hier eine Anleitung.
bis bald
akari
-
Danke
hatte das ProcessMessages vergessen
MfG
-
Hallo,
Eine Frage meinerseits zum Thema Splashscreen:
Ich habe versucht, einen Splashscreen nach oben genannter Anleitung in ein bestehendes Project (MDI-Anwendung) einzubinden.
Der Splashscreen an sich wird angezeigt und nach der Initialisierung aller Forms auch wieder geschlossen.
Das Problem ist jedoch, das nach dem Beenden der Application zwar der Task (im Taskmanager) beendet ist, jedoch der Prozess (im Taskmanager) weiterhin besteht.Wo kann bzw. muß ich in diesem Fall den Fehler suchen ????
Udo11
-
ich würde sagen beim beenden deines programmes?
gibst du dynamisch geholten speicher wieder frei?kannst ja mal etwas code zeigen?
-
Hallo,
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { Application->Initialize(); if(AnsiString(GetCommandLine()).UpperCase().Pos("/NOSPLASH") == 0) { splash = new Tsplash(NULL); splash -> Show(); Application -> ProcessMessages(); } Application->CreateForm(__classid(TMainForm), &MainForm); Application->ShowMainForm = false; Application->Run(); return 0; }Das ist der Code von project.cpp
Und hier die Freigabe der SplashForm in MainForm->FormActivate():if (splash != NULL) { delete splash; splash = NULL; }Ich hatte diesen Code zur Freigabe des Forms auch schon in MainForm->Show() --> der gleiche Fehler
Udo11