Thema: Delphi Progress Form/Dialog VCL

Einzelnen Beitrag anzeigen

lxo

Registriert seit: 30. Nov 2017
260 Beiträge
 
Delphi 12 Athens
 
#11

AW: Progress Form/Dialog VCL

  Alt 1. Okt 2018, 08:13
Je öfter ich Application.ProcessMessages auslöse umso langsamer wird der Import.
Eine Möglichkeit wäre, vor einem Aufruf von Application.ProcessMessages zu prüfen, wie lange der letzte Aufruf her ist. Erst dann, wenn das vor mehr als z.B. 100 ms war, wird dann Application.ProcessMessages aufgerufen:

Delphi-Quellcode:
var
  LastCall: Int64;
  ThisCall: Int64;

[...]
  ThisCall := GetTickCount;
  if (ThisCall - LastCall > 100) or (LastCall > ThisCall) then begin
    Application.ProcessMessage;
    LastCall := ThisCall;
  end;
Also das ist ja echt simpel und funktioniert richtig gut.
Danke für den Tipp, ich denke ich werde es erstmal so anwenden und schaue mir später genau an wie ich das mit einem Thread lösen kann.
  Mit Zitat antworten Zitat