Morgen,
ungefähr so müsste es sein:
Delphi-Quellcode:
type
TForm1=class(TForm)
private
DataContainer: TContainer;
DataContainerChange(Sender: TObject);
end;
procedure TForm1.Create(Sender: TObject);
begin
DataContainer := TContainer.Create;
DataContainer.OnChange := DataContainerChange;
end;
procedure TForm1.DataContainerChange(Sender: TObject);
begin
ShowMessage('Thread hat Daten verändert :-)');
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Th: TMyThread;
begin
Th: TMyThread.Create(True);
// Th.s:=@s_thread;
Th.DataContainer := DataContainer;
Th.resume;
end;
Und im TThread.Execute kannst du dann eben mit
DataContainer.myVariable := 'threaddaten!';
Die Daten verändern, und der Hauptthread wird sogar über die Änderung informiert.
So habe ich es jedenfalls verstanden. Und der Code hier ist nur so geschrieben, bestimmt ein Fehler drin