Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Assigned(FOnEinEvent) liefert false (https://www.delphipraxis.net/115955-assigned-foneinevent-liefert-false.html)

Oracle 20. Jun 2008 14:45


Assigned(FOnEinEvent) liefert false
 
Ich nutzt zur Zeit eine Reihe von Events innerhalb eines Threads.
An einer Stelle hab ich jedoch arge Probleme.

Der Aufruf Assigned(FOnEinEvent) liefert immer false zurück, obwohl vorher
nach erstellen des Objekts der Event mit einer Methode verbunden wurde.
Objekt.OnEinEvent := EineMethode.

Kann das Objekt zwischendurch vergessen was ich da zugewiesen habe, oder kann es an etwas ganz anderem liegen.
Wär schön wenn jeman schon mal ein ähnliches Problem hatte und mir helfen kann.

Vielen Dank schonmal im Vorraus :-D

shmia 20. Jun 2008 15:10

Re: Assigned(FOnEinEvent) liefert false
 
Prüfe, bzw. stelle sicher, dass das Objekt, dass den Eventhandler anbietet auch <> nil ist:
Delphi-Quellcode:
Assert(assigned(self));  // sicherstellen, das das Objekt in dessen Kontext wir sind <> nil ist
Objekt.OnEinEvent := EineMethode;
// das ist ja gleichbedeutend mit
Objekt.OnEinEvent := self.EineMethode;

littleDave 20. Jun 2008 15:43

Re: Assigned(FOnEinEvent) liefert false
 
Was auch noch sein kann, ist dass du in der write-Anweisung der Property auf eine andere/falsche Variable zeigst:
Delphi-Quellcode:
type
  TMyObject = class(TObject)
  private
    Fabc : TNotifyEvent;
    Fxyz : TNotifyEvent;
  published
    property OnABC : TNotifyEvent read Fabc write Fxyz; // <--
  end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:52 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