Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Synchronize mit Argumenten

  Alt 9. Feb 2011, 21:18
Verflixte Technik ... geht doch nicht, da "Symbol SyncError kann nicht erfasst werden"

Na dann am besten auf XE umsteigen
Tja, das ist mit der Delphi-Version blöde ... bei den neueren Versionen macht man das ganz charmant über Anonyme Methoden.

Aber so sollte es auch charmant gehen:

Delphi-Quellcode:
type
  TInstError = procedure(const Content: String) of object;
 
  TMyOwnThread = class(TThread)
  private
    FInstError: TInstError;
    // procedure SyncError; @DeddyH: logisch muss die hier raus :o)
    CallError( const Content : string );
  public
    property InstError: TInstError read FInstError write FInstError;
  end;
 
implementation

procedure TMyOwnThread.CallError( const Content : string );
procedure SyncError;
begin
  if Assigned( FInstError )
    then FInstError( Content );
end;
begin
  Synchronize( SyncError );
end;
 
procedure TMyOwnThread.Execute;
begin
  ...
  // Error 1
  CallError( 'Fehler 1' );
  ...
  // Error 2
  CallError( 'Fehler 2' );
  ...
  // Error 3
  CallError( 'Fehler 3' );
  
  usw.
end;


procedure Form1.InstError(const Content: String);
begin
  RichEditError.Lines.Add(Content);
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat