Ver Mensaje Individual
  #6  
Antiguo 24-10-2022
er_lolo er_lolo is offline
Miembro
 
Registrado: may 2016
Posts: 16
Reputación: 0
er_lolo Va por buen camino
Cita:
Empezado por xalo Ver Mensaje
No es correcto como lo estás haciendo er_lolo.
Una de las múltiples formas de hacerlo sería la siguiente:

Código Delphi [-]
      ProgressFrame1.Label1.Text := 'Realizando cálculos, por favor espere...';
      ProgressFrame1.Visible := true;
      ProgressFrame1.BringToFront;
     
      TThread.CreateAnonymousThread(procedure  
      begin
         // Aquí iría todo el código que no afecte a interface usuario....cálculos...todo usando variables locales
         CalculaDatos;
         TThread.Synchronize(nil , procedure
         begin
            // Aquí iría todo el código que cambie algo de la UI. TEdit,TLabel,......
            ProgressFrame1.Visible := false;
         end);
       end).Start;
Efectivamente, lo pongo en el texto y no lo aplico, todo lo que afecta a la UI. en el TThread.Synchronize.

Gracias!.
Responder Con Cita