Ver Mensaje Individual
  #1  
Antiguo 16-05-2008
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Reputación: 21
salvica Va por buen camino
TIdFtp y ProgressBar

Hola de nuevo

Estoy intentando hacer un cliente FTP para recibir archivos, y en el form he puesto dos ProgressBar

En la que indica el archivo transferido trabaja Ok (total, los leo de un StringList)

El "problema" lo tengo con la barra de descargas, no se actualiza o mejor dicho, parece que lo hace al acabar la descarga.


He mirado en el foro y las soluciones son parecidas a las que tengo (que por cierto las saqué de otro foro de Delphi en francés). Os pongo el código por si tuviese que hacer algo más

Código Delphi [-]

procedure TForm_Ftp_Win.IdFTP_OnWorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer);
begin
{ al empezar la transferencia }
  ProgressBar_FTP.Max      := AWorkCountMax;
  ProgressBar_FTP.Position := 0 ;
  (*
  if( AWorkMode=wmRead ) then //uniquement quand le composant recoit des données
  begin
    ProgressBar_FTP.Max      := AWorkCountMax; //Maximum = taille de l'élément
    ProgressBar_FTP.Position := 0; //Position à zéro
    //ProgressBar_FTP.Visible  := true;
  end;
  *)
end;

procedure TForm_Ftp_Win.IdFTP_OnWork(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer);
begin
{ visualizar la descarga del fichero }
  Application.ProcessMessages;
  ProgressBar_FTP.Position := AWorkCount;
  ProgressBar_FTP.Refresh; (* Esto es de Román, pero tampoco hace nada *)
  (*
  if AWorkMode=wmRead then //uniquement quand le composant recoit des données
     ProgressBar_FTP.Position := AWorkCount;
  *)
end;

procedure TForm_Ftp_Win.IdFTP_OnWorkEnd(Sender: TObject; AWorkMode: TWorkMode);
begin
{ al finalizar la transferencia }
  //ProgressBar_FTP.Visible  := false;
  ProgressBar_FTP.Position := 0;
end;
Lo que tengo como comentario (* *) es el código original.

¿Podeis echarme una mano?

Gracias anticipadas
salvica
Responder Con Cita