Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-05-2008
Paulao Paulao is offline
Miembro
NULL
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 16
Paulao Va por buen camino
Progressbar

Cómo pongo una Progressbar en este codigo:
Código Delphi [-]
procedure TfrmLe_ECF.cxButton1Click(Sender: TObject); 
begin 
Screen.Cursor := crHourGlass; 
CapturaStatus; 
AssignFile(arq,ExtractFilePath(Application.ExeName)+'\Teste.TXT'); 
Rewrite(arq); 
Write(arq,guardastatus.Text); 
CloseFile(arq); 
Screen.Cursor := crDefault; 
end;
Esta progress es para muestrar el andamiento del los archivos, o sea, mientras va se grabando en el disco se muestrando el progressbar.

Última edición por dec fecha: 28-05-2008 a las 20:18:23.
Responder Con Cita
  #2  
Antiguo 28-05-2008
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 28.700
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
uuummm... no veo ningún bucle de "andamiento" para usar una barra de progreso, creo que no has puesto el código oportuno
Responder Con Cita
  #3  
Antiguo 28-05-2008
Avatar de roman
roman roman is offline
Moderador
NULL
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.207
Poder: 10
roman Tiene un aura espectacularroman Tiene un aura espectacular
Pues sí, como comenta Casimiro, si quieres mostrar el progreso de lo andado, debes andar por partes. Al parecer escribes todo el contenido en un sólo paso:

Código Delphi [-]
Write(Arq, GuardaStatus.Text);

Podrías intentar escribiendo línea a línea:

Código Delphi [-]
ProgressBar1.Max := GuardaStatus.Lines.Count;
ProgressBar1.Position := 0;
ProgressBar1.Step := 1;

for I := 0 to GuardaStatus.Lines.Count - 1 do
begin
  ProgressBar1.StepIt;
  WriteLn(Arq, GuardaStatus.Lines[i]);
end;

Claro, suponiendo que GuardaStatus es un Memo a algo similar.

// Saludos
Responder Con Cita
  #4  
Antiguo 28-05-2008
Paulao Paulao is offline
Miembro
NULL
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 16
Paulao Va por buen camino
Yo hizo asi, pero no camina el progress. El queda en 0% y despues se va a 100%. No va asi, 0,1,2,3...100%. Este es el codigo que yo puzo. guardastatus es una StringList y CapturaStatus es una procedure para llenar el StringList solamente. Mi progressbar es una TcxProgressBar.

Código Delphi [-]
procedure TfrmLe_ECF.cxButton1Click(Sender: TObject);
var
 i: Integer;
begin
  Screen.Cursor := crHourGlass;
  CapturaStatus;
  AssignFile(arq,ExtractFilePath(Application.ExeName)+'\Teste.TXT');
  Rewrite(arq);

  pb.Properties.Max := guardastatus.Count;
  pb.Position := 0;

  for I := 0 to GuardaStatus.Count - 1 do 
  begin
    pb.Position := pb.Position;
    WriteLn(Arq, GuardaStatus.Text[i]);
  end;

  Write(arq,guardastatus.Text);
  CloseFile(arq);
  Screen.Cursor := crDefault;
end;
Responder Con Cita
  #5  
Antiguo 28-05-2008
Paulao Paulao is offline
Miembro
NULL
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 16
Paulao Va por buen camino
Perdon, esta linea estas asi:
Código Delphi [-]
pb.Position := pb.Position+i;
Responder Con Cita
  #6  
Antiguo 28-05-2008
Paulao Paulao is offline
Miembro
NULL
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 16
Paulao Va por buen camino
Yo puzo un Count, pero Count de que? Creo que el no sabe que Count, falta algo que no se que es, por eso no funciona, o sea va de 0 hacia 100, pues no tiene una referencia para un Count. Si fuera linea, entonces el Count estaria apropriado. Tipo: Memo.Lines.Count, el estaria contado las lineas, pero es un Stringlist.
Responder Con Cita
  #7  
Antiguo 28-05-2008
Avatar de jcarteagaf
[jcarteagaf] jcarteagaf is offline
Miembro Premium
NULL
 
Registrado: abr 2006
Ubicación: La Paz, Bolivia
Posts: 651
Poder: 13
jcarteagaf Va por buen camino
Cambia tu codigo de esta forma:

Código Delphi [-]
procedure TfrmLe_ECF.cxButton1Click(Sender: TObject);
var
 i: Integer;
begin
  Screen.Cursor := crHourGlass;
  CapturaStatus;
  AssignFile(arq,ExtractFilePath(Application.ExeName)+'\Teste.TXT');
  Rewrite(arq);

  pb.Properties.Max := guardastatus.Count;
  pb.Position := 0;
  pb.Step := 1; // queremos que vaya de 1 en 1
  for I := 0 to GuardaStatus.Count - 1 do 
  begin
    pb.StepIt; // avanza de 1 en 1
    Application.Processmessages;  // refresca la pantalla
    WriteLn(Arq, GuardaStatus.Text[i]);
  end;

  Write(arq,guardastatus.Text);
  CloseFile(arq);
  Screen.Cursor := crDefault;
end;

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
LoadFromFile con una progressbar Jesús Pena Varios 5 18-04-2007 21:19:24
ProgressBar en StatusBar CFPA86 Varios 2 22-02-2007 22:04:58
ProgressBar Con dos Formularios mcarazas Varios 2 23-06-2006 05:18:32
Progressbar mminorm Varios 1 29-05-2005 08:19:21
color progressbar haffo OOP 2 24-10-2003 16:05:09


La franja horaria es GMT +2. Ahora son las 00:32:13.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi