Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.024 Beiträge
 
Delphi 12 Athens
 
#9

AW: Ereignis wird nicht zu Ende geführt (früher "... ausgelöst")

  Alt 14. Nov 2014, 08:36
Würde es Dir viel ausmachen, mir das vom Grundsatz zu skizzieren?
Na, das ist dich ziemlich ersichtlich. Wenn du als Parameter für ThreadEnde nicht die ID sondern z.B. TheObject: TMyObject deklarierst,

Delphi-Quellcode:
procedure TForm1.ThreadEnde(TheObject: TMyObject);
begin
  Memo1.Lines.Append('Event for ID ' + IntToStr(TheObject.ID) + ' received');
  if TheObject.ID > 2 then
  begin
    TheObject.PNGStream.SaveToFile('bild.png');
    TheObject.JPGStream.SaveToFile('bild.jpg');
  end;
  // Bei ID < 3 läuft alles durch. Es muss also Probleme beim Speichern geben.
  Button1.Enabled:=true;
  Memo1.Lines.Append('... all done - object ID is ' + IntToStr(TheObject.ID));
end;
und dann in FireOnEnde sowas
if assigned(fOnEnde) then fOnEnde(fMyObject);
schreibst, dann kannst du den Zugriff über die Liste sparen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat