Einzelnen Beitrag anzeigen

BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
480 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Semi-Modalen Dialog erstellen

  Alt 18. Okt 2021, 08:57
Ich leite alle Dialoge immer von einer eigenen Basisklasse ab.
Hier mal ein vereinfachtes Beispiel für diesem Zweck:
Delphi-Quellcode:
 
TBasicForm = class(TForm)
private
  FStart: Int64;
public
  procedure AntiFreeze; // ruft nur alle 50ms Application.ProcessMessages;
end;

...
procedure TBasicForm .AntiFreeze;
begin
  if FStart = 0 then
    FStart := GetTickCount
  else
    if GetTickCount - FStart > 50 then
    begin
      FStart := GetTickCount;
      Application.ProcessMessages;
    end;
end;
50 Millisekunden habe ich gewählt, damit TProgressbar noch einigermaßen flüssig bleibt.

Bei allem was ich neu schreibe, verwendet das aber nicht mehr.
Bernd
  Mit Zitat antworten Zitat