Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 20-08-2020
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.449
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Una cuarta que se me ocurre a las que ha propuesto [dec], es crear un formulario de progreso "tonto" y pasarle el procedimiento que debe ejecutar.
De esta forma la lógica no está en el formulario, sino que símplemente se le pasa la referencia.
Además el mismo procedimiento sirve para ejecutarlo con y sin formulario.


El proceso sería el siguiente:
Código Delphi [-]
procedure TForm1.Proceso();
var
  i:integer;
begin
  for i := 0 to 100 do begin
    Sleep(50);
    Self.Caption := Format('Pasi %d de %d', [i, 100]);
    Application.ProcessMessages;
  end;
end;

La llamada normal sería así:

Código Delphi [-]
proceso;

La llamada utilizando el formulario de progreso sería así:
Código Delphi [-]
TFormProgreso.ExecuteProcess(Proceso);

Y el form de progreso tendría un método de clase para ejecutarlo:
Código Delphi [-]
class procedure TFormProgreso.ExecuteProcess(aProceso: TProcess);
var
  FormProgreso: TFormProgreso;
begin
  FormProgreso := TFormProgreso.Create(Application);
  FormProgreso.FProceso := aProceso;
  FormProgreso.ShowModal;
  FormProgreso.Free;
end;

Esta parte correspondería a la ejecución:

Código Delphi [-]
procedure TFormProgreso.FormShow(Sender: TObject);
begin
  PostMessage(Self.Handle, WM_AFTER_SHOW, 0, 0);
end;

procedure TFormProgreso.WMAfterShow(var Msg: TMessage);
begin
  if Assigned(FProceso) then
    FProceso();
  Close;
end;

Funcionando con ambos sistemas...



Os adjunto el código del ejemplo y lo subo al FTP.
Archivos Adjuntos
Tipo de Archivo: zip FormularioModalProgreso.zip (53,6 KB, 22 visitas)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 20-08-2020 a las 12:36:25.
Responder Con Cita
 



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
Barra de progreso nabucodonosor Delphi para la web 3 01-11-2012 10:57:04
Barra de Progreso XcamX MySQL 1 21-12-2010 11:24:52
TIdFtp y barra de progreso madmai Internet 3 25-02-2009 15:20:14
Barra de progreso? marlulipe Impresión 5 26-02-2008 16:51:55
Mostrar progreso de descarga de IndyFTP con barra de progreso devicer Internet 2 05-12-2005 14:59:32


La franja horaria es GMT +2. Ahora son las 05:39:34.


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