Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Record in Event als VAR zurückliefern > Integer immer 0 (https://www.delphipraxis.net/99672-record-event-als-var-zurueckliefern-integer-immer-0-a.html)

Pfoto 15. Sep 2007 22:36


Record in Event als VAR zurückliefern > Integer immer 0
 
N'abend zusammen!

vielleicht könnt ihr mir bei folgendem Problem helfen:

Ich feuere innerhalb eines Threads ein Event, um den
Benutzer auf etwas hinzuweisen und ggf. reagieren zu lassen.
Die Antwort soll im übergebenen aMsgEvent (Record) wieder
die Interger-ID der Antwort speichern, z.B. IDCANCEL;


Delphi-Quellcode:
procedure TForm1.JobMsgEvent(var aMsgEvent: TMsgEvent); // Alternative Version
procedure TForm1.JobMsgEvent(aMsgEvent: TMsgEvent);
begin
  // Hier das Resultat der Abfrage übergeben
  aMsgEvent.ConfirmationResult:=
    Application.MessageBox(PAnsiChar(aMsgEvent.Msg,
      PAnsiChar(aMsgEvent.Desc), MB_OKCANCEL);
end;
Problem:
Der Wert in "aMsgEvent.ConfirmationResult" ist immer "0",
wenn ich das Record im Thread wieder auswerte.
Setze ich testweise einen String, wird dieser ordnungsgemäß
im Record gespeichert.


Ich dachte, ein Record wird bereits als Referenz übergeben?
Und auch ein (var sMgEvent: TMsgEvent) im Event hatte nichts
bewirkt.

Kann es sein, dass der Datentyp Integer innerhalb des Records
nicht als Referenz übergeben wird oder ist das ein grundsätzlicher
Denkfehler?

Notfalls werde ich halt ein TObject nehmen.


Aber vorher höre ich gerne Eure Meinungen
Gruß
Pfoto


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz