Ich weiss nicht genau ob Du das meinst, ich entkoppele das meistens so:
Delphi-Quellcode:
procedure TMyForm.OnNfcResult( AText : String );
var
LText : String;
begin
LText := AText; // Zusätzliche Sicherheit zum Entkoppeln des Strings, sollte nicht unbedingt nötig sein
TThread.ForceQueue( nil,
procedure
begin
Label1.Text := LText;
Label1.Repaint; // Wenn die Zuweisung nicht reicht.
end );
end;
Mit dem ForceQueue versichere ich dass das Label egal aus welchem Kontext korrekt im MainUI angesprochen wird.
Ich habe verschiedene externe Events wo man nicht immer 100% sicher sagen kann ob es im MainUI ankommt.
Vielleicht löst das Deinen Fall, wenn ich den richtig verstanden habe ?