AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Threadklasse mit Event aktualisiert nicht

Ein Thema von Inspur1 · begonnen am 28. Aug 2024 · letzter Beitrag vom 29. Aug 2024
 
Inspur1

Registriert seit: 28. Aug 2024
10 Beiträge
 
#1

Threadklasse mit Event aktualisiert nicht

  Alt 28. Aug 2024, 04:17
Greetings!

Ich entwickel in FreePascal eine Threadklasse mit einem Event und einigen Eigenschaften.
Um das Problem besser zu erklären, habe ich das Beispiel kompromiert.

Delphi-Quellcode:
unit uTest;

interface

uses Classes;

type
  TTestThread = class(TThread)
  private
    FTestProperty: string;
    FOnTest: TNotifyEvent;
  protected
    procedure DoTest; virtual;
    procedure Execute; override;
  public
    constructor Create(CreateSuspended: Boolean);
    destructor Destroy; override;
    property TestProperty: string read FTestProperty write FTestProperty;
    property OnTest: TNotifyEvent read FOnTest write FOnTest;
  end;

implementation

constructor TTestThread.Create(CreateSuspended: Boolean);
begin
  inherited Create(CreateSuspended);
  FTestProperty := 'default';
end;

destructor TTestThread.Destroy;
begin
  inherited;
end;

procedure TTestThread.DoTest;
begin
  if not Assigned(FOnTest) then
    FOnTest(self);
end;

procedure TTestThread.Execute;
begin
  DoTest;
end;


end.



// Call

private
  FTest: TTestThread;
  procedure MyTest(Sender: TObject);

procedure TForm1.MyTest(Sender: TObject);
begin
  FTest.TestProperty := '>>> Test2 <<<';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  FTest := TTestThread.Create(false);
  FTest.FreeOnTerminate := false;
  FTest.OnTest := MyTest;
  FTest.Resume;
  Caption := FTest.TestProperty;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  if Assigned(FTest) then
    FTest.Free;
end;
Ich will im Event die Eigenschaft ändern aber es bleibt bei "default".
Wie mache ich das richtig?
  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 21:38 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