Wow, ich war nur mal kurz draußen...
Ich glaube ich habe die Lösung....
So ich habe das versucht :
Delphi-Quellcode:
procedure TDLT.OnThreadTerminate(Sender: TObject);
begin
if Thread1.Finished and Thread2.Finished then
Show;
end;
Thread1 und Thread2 feuern hier drauf. Aber der jeweilige fertige Thread stellt wohl Finished und Terminated erst nach dem Event auf True. So war das eigene Finished immer noch auf False.
Ich habe jetzt die Eventprocedure aufgeteilt. Jetzt fragt der jeweils fertig werdene Thread den anderen, ob er schon fertig ist :
Delphi-Quellcode:
procedure TtDLT.OnThread1Terminate(Sender: TObject);
begin
if Thread2.Finished then
Show;
end;
procedure TDLT.OnThread2Terminate(Sender: TObject);
begin
if Thread1.Finished then
Show;
end;