Delphi - ayuda con splash

 
Vista:

ayuda con splash

Publicado por maxter (53 intervenciones) el 22/11/2004 22:21:35
Hola, tengo un splash para mi aplicación ke funciona perfectamente pero a veces y dependiendo de la pc se demora al cargar la BD, con sus tablas y querys [ke son unas cuantas], en mi PC [Celeron 2GHz, 256 DDR]las carga rápido pero el usuario para el ke hice la aplicación tiene una Pc [Celeron 700MHz, 64RAM] y no lo he probado allí pero se que se va a demorar. Lo que quiero es lo siguiente en el splash ponerle un Progressbar [para que se entretenga ;-))] y no sé como hacerlo. Probé un ejemplo ke viene en Trucomania.com pero me da error de violación de acceso.

Suerte.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ayuda con splash

Publicado por Alfreny Herrera (63 intervenciones) el 23/11/2004 16:24:45
bueno
lo que tienes que hacer es poner en el evento create de cada form alguna variable que cuando estos esten cargados la activen, asi podras saber cuando ya termino de cargarse cada form y hacer que el progressbar avance segun estos se crean

ejemplo en el evento formcreate del form1
//toma en cuenta que la variable debe de ser globla para que el
//splash pueda leerla

begin
fulanito := true;
end;

y asi con cada uno de los form de la aplicacion excepto el splash claro

pero para que complicarte la vida con el ejemplo de Trucomania:

Este codigo esta en el evento OnCreate de una form principal, pero podriamos mandarlo llamar de otras forms siempre en el evento OnCreate.



procedure TForm1.FormCreate(Sender: TObject);
begin
Try
DataBase1.Connected:=True
Except
ShowMessage('Cannot open DB1')
end;
SplashForm.ProgressBar.StepIt;
SplashForm.update;
Try
DataBase2.Connected:=True
Except
ShowMessage('Cannot open DB2')
end;
SplashForm.ProgressBar.StepIt;
SplashForm.update;
Try
Table1.Active:=True
Except
ShowMessage('Cannot open Table 1')
end;
SplashForm.ProgressBar.StepIt;
SplashForm.update;
Try
Table2.Connected:=True
Except
ShowMessage('Cannot open Table 2')
end;
SplashForm.ProgressBar.StepIt;
SplashForm.update;
...
SplashForm.Free
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda con splash

Publicado por maxter (53 intervenciones) el 23/11/2004 18:05:55
Me alegra ke me hayas respondido, pero yo no quiero verificar las form sino que kiero ke según se vayan activando la BD, las tablas y las querys el progressbar vaya caminando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda con splash

Publicado por luischevelle (9 intervenciones) el 23/11/2004 21:37:47
seria lo mismo que te dijo alfreny pero cada ves que le des a la tabla.open avanza el progressbar lo puedes hacer checando si se conecto como por ejemplo
if tabla.isconnected=true then
progresbar........etc

ojala y te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar