AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Thread: OnExecute Prozedur übergeben
Thema durchsuchen
Ansicht
Themen-Optionen

Thread: OnExecute Prozedur übergeben

Ein Thema von kurtm1 · begonnen am 7. Sep 2009 · letzter Beitrag vom 8. Sep 2009
 
Benutzerbild von Björn Ole
Björn Ole

Registriert seit: 10. Jul 2008
166 Beiträge
 
Delphi XE Professional
 
#3

Re: Thread: OnExecute Prozedur übergeben

  Alt 7. Sep 2009, 23:40
Delphi-Quellcode:
type
  TAProcedure = procedure(i: integer);

  TMyThread = class(TThread)
  private
    FAProcedure: TAProcedure;
  protected
    constructor Create(CreateSuspended: boolean; AProcedure: TAProcedure);
    procedure Execute; override;
  end;

{...}

implementation

procedure MyProcedure(i: integer); // Kopf entspricht TAProcedure
begin
  {..}
end;

{ TMyThread }

constructor TMyThread.Create(CreateSuspended: boolean;
  AProcedure: TAProcedure);
begin
  inherited Create(CreateSuspended);
  FAProcedure := AProcedure;
end;

procedure TMyThread.Execute;
begin
  if Assigned(FAProcedure) then
    FAProcedure(1);
end;

{ TfrmMain }

procedure TfrmMain.BtnClick(Sender: TObject);
begin
  TMyThread.Create(false, @MyProcedure); // passende Prozedur übergeben
end;
Beachte aber, dass du eventuelle Zugriffe auf die VCL synchronisieren musst.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz