Ver Mensaje Individual
  #3  
Antiguo 24-06-2004
igest2000 igest2000 is offline
Miembro
 
Registrado: may 2003
Ubicación: Oviedo
Posts: 47
Reputación: 0
igest2000 Va por buen camino
Como dice lepe tienes varias alternativas al TTimer y sobre todo debes tener mucho cuidado con lo de ir mostrando el avance en una barra de progreso. A menos que sepas el tiempo que se tarda en realizar la tarea, es dificil determinar el avance de la misma, eso si en caso de saberlo te interesaria un TTimer, ya que con este puedes ir controlando en todo momento el progreso, mientras que si usas las funciones que te comentaba lepe, solo peudes calcular el tiempo desde el principio hasta el final.

Si persistes en usar el TTimer, en el evento onTimer deberias hacer que la barra de progreso fuese avanzando teniendo en cuenta la cantidad de trabajo que tienes realizada. Así por ejemplo si tienes cuatro tareas, puedes hacer que cuando vayas acabando cada una de ellas la barra de progreso avance un 20%.

ejemplo de codigo:


procedure TTImer1.onTimer(..)
begin
case tarea of
1: begin
progresBar1.progres:=20;
end;
2: begin
progresBar1.progres:=40;
end;
3: begin
progresBar1.progres:=60;
end;
4: begin
progresBar1.progres:=80;
end;
end;

En este ejemplo se usa la variable global tarea, que a medida que se vayan ejecutando los procesos, iras ampliandola, de forma que cuando el TTimer compruebe su valor, puedas determinar en que estado de progreso estas.

Espero te sirva de ayuda.
__________________
=================
El destino esta marcado
y ellos lo saben.
=================
Responder Con Cita