Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Showmessage in callback (https://www.delphipraxis.net/155466-showmessage-callback.html)

Tonic1024 25. Okt 2010 11:50

AW: Showmessage in callback
 
Okay... ich nehm das mal als gegeben hin. Wie gesagt, Label zu updaten war kein Problem. Das machte mich halt stutzig. Oder sollte ich das auch vermeiden?

himitsu 25. Okt 2010 12:09

AW: Showmessage in callback
 
Delphi-Quellcode:
var DerString: String;

procedure DeineProzedur;
begin
  Form1.Label4.Caption := DerString;
  showmessage('Tadaaa');
end;

procedure callback(Value: PAnsiChar);
begin
  DerString := Value;
  TThread.Synchronize(nil, DeineProzedur);
end;
In neueren Delphis ist diese Sync-Procedur als Referenz ausgelegt, das heißt man kann hier z.B. eine einfache Prozedur + eine globale Variable
oder OOP-mäßig eine Methode, mit der Variable als Feld in der zugehörigen Klasse verwenden.


Wo du aber aufpassen mußt, auf diesen String (bzw. alle Variablen, welche du für die Synchronisierung benötigst) darf nur innerhalb dieses Callbacks (solange dieser Callback immer nur aus einem Thread gleichzeitig aufgerufen wird) und innerhalb der SyncProzedur zugegriffen werden.
Oder du mußt den Zugriff auf diese Variablen z.B. über eine CriticalSection absichern.

Tonic1024 25. Okt 2010 12:42

AW: Showmessage in callback
 
Ohja... Sowas hatte ich mir vorgestellt. Klappt.

Thnx,

Toni


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:47 Uhr.
Seite 2 von 2     12   

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 by Thomas Breitkreuz