Ver Mensaje Individual
  #5  
Antiguo 19-09-2023
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Entiendo que FormaMesaje es un Form que contiene un label en el que muestras el progreso.
Solo debes cambiar esta línea.

Código Delphi [-]
var UUID:string;
begin
   for I := 0 to FileListBox.Items.Count-1 do
   begin
         FormaMensaje.label.caption:= 'XML '+IntToStr(i)+' de '+ IntToStr(FileListBox.Items.Count-1);

         Application.ProcessMessages; // FormaMensaje.label.refresh;

         XMLDocLocal.LoadFromFile(NomArchivoXML);
         UUID:= ExtraerDatosParaNombreArchivo(XMLDocLocal); // Obtengo el identificador del XML UUID
         Datamodule.FDQuery.Open('SELECT UUID FROM TABLA WHERE UUID = '+#39+UUID+#39');
         if Datamodule.FDQuery.isEmpty then // No existe en la base de datos, debo de grabarlo
                XMLaTabla(XMLDocLocal);
         // Mas cosas por acá............................
   end;
end;

A veces, el procesar los mensajes de Windows incorpora una demora grande por lo que quizás quieras realizar este proceso cada n pasadas.
Código Delphi [-]
var UUID:string;
begin
   for I := 0 to FileListBox.Items.Count-1 do
   begin
         FormaMensaje.label.caption:= 'XML '+IntToStr(i)+' de '+ IntToStr(FileListBox.Items.Count-1);

          // Solo refresca 1 de cada 10 veces.
          if (i mod 10 = 0) then
             Application.ProcessMessages; // FormaMensaje.label.refresh;

         XMLDocLocal.LoadFromFile(NomArchivoXML);
         UUID:= ExtraerDatosParaNombreArchivo(XMLDocLocal); // Obtengo el identificador del XML UUID
         Datamodule.FDQuery.Open('SELECT UUID FROM TABLA WHERE UUID = '+#39+UUID+#39');
         if Datamodule.FDQuery.isEmpty then // No existe en la base de datos, debo de grabarlo
                XMLaTabla(XMLDocLocal);
         // Mas cosas por acá............................
   end;
end;
Responder Con Cita