Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#5

AW: OpenDialog Problem

  Alt 22. Nov 2012, 21:25
Delphi-Quellcode:
...
TThread.Synchronize(nil, procedure
  begin
    try
      if frm_Start.OpenDialog.Execute then
        frm_Start.UniDump.RestoreFromFile(frm_Start.OpenDialog.Filename);
    except
      on E: Exception do
        ShowMessage(E.Message);
    end;
  end;
...



...
TThread.Synchronize(nil, procedure
  begin
    doit := if frm_Start.OpenDialog.Execute;
    filename := frm_Start.OpenDialog.Filename;
  end;
if doit then
  try
    RestoreFromFile(filename);
  except
    on E: Exception do
      TThread.Synchronize(nil, procedure
        begin
          ShowException(E, nil);
        end;
  end;
...

bzw. wenn der Code in einem TThread-Execute steht, dann direkt
Delphi-Quellcode:
Synchronize(procedure
  begin

  end;
Sowas sollte man nur für kurze Funktionen nutzen, aber dafür kann man, bei diesen anonymen Methoden, auch lokale Variablen übergeben.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat