Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Wie funktioniert Application.ProcessMessages?

  Alt 2. Mär 2007, 18:37
Zitat von DelphiManiac:
Wenn ich nun ein OnMouseClick Event irgendeiner Komponente definiert habe und dann ein bestimmten Quellcode bereich abarbeite, dann wird ja erst all das abgearbeitet, bis es die Nachrichtenschleife leer ist oder?
Erst dann geht es doch nach Application.ProcessMessages weiter oder?????
Richtig!
Deshalb sollte man alle Menues, Buttons und Actions sperren bis der Job fertig ist.
Am Besten fährt man, wenn man Aktions benützt; das hilft bei der Organisation.
Man braucht einen Try..Finally Schutzblock, damit nach einer Exception das Programm nicht unbedienbar wird:
Delphi-Quellcode:
procedure TForm1.ActionDoWorkExecute(...);
begin
   ActionDoWork.Enabled := False;
   try
      TueDieLangeUndSchwereArbeit;
   finally
      ActionDoWork.Enabled := True;
   end;
end;
Andreas
  Mit Zitat antworten Zitat