ciao a tutti!
Vorrei che durante il cariamento del mio programma , quindi di tutte le form,rimanesse visibile una finestra Splash...come é possibile?
Grazie
![]()
ciao a tutti!
Vorrei che durante il cariamento del mio programma , quindi di tutte le form,rimanesse visibile una finestra Splash...come é possibile?
Grazie
![]()
crea la tua finestra di splash e metti queste due procedure:
apri il file del progetto (.dpr) e subito dopo il begin inserisci:procedure SplashInit;
begin
SplashDlg:=TSplashDlg.Create(Application);
with SplashDlg do
begin
Show;
UpDate;
end;
end;
procedure SplashStop;
begin
SplashDlg.Hide;
SplashDlg.Free;
end;
e prima di Application.Run metti:SplashInit;
uscirà una cosa del genere:SplashStop;
...
{$R *.RES}
begin
SplashInit(false);
Sleep(1500); // aspetta 1,5 secondi puoi non metterlo se il caricamento è lungo
Application.Initialize;
Application.CreateForm(TCM, CM);
Application.CreateForm(TMainDlg, MainDlg);
Application.CreateForm(TSendMailDlg, SendMailDlg);
Application.CreateForm(TRxDlg, RxDlg);
Application.CreateForm(TTxDlg, TxDlg);
SplashStop;
Application.Run;
end.
ora provo...
Funziona, ma non al 100 %!
Quando chiudo la mia appicazione mi appare l'errore d'accesso violato nel modulo...
Come mai?
vedi che il rigo Application.CreateForm(TSplash..., Splash...) non deve comparire nel dpr...
Infatti ho creato una procedura esterna al project, che viene richimata nei due punti che mi hai indicato!
Se non faccio andare la funzione Free, tutto funziona normalmente!