Ereignisbehandlungsmethode ohne Parameter (Komponentenentw.)



  • Also ich habe eine Ereignisbehandlungsmethode die keinerlei Parameter haben soll. Allerdings ist der compiler mit:

    //typedef void __fastcall (__closure *MyAfterOpen)();
    

    nicht einverstanden gewesen. Wenn ich in die Klammern ein void schreibe akzeptiert der Compiler das zwar aber wenn ich in der Entwicklungsumgebung dann in die Methode Doppelklicke zum erstellen dieser, gibts da eine Fehlermeldung.

    Daraufhin habe ich mich versucht etwas schlau zu machen und bin auf TNotifyEvent gestoßen, habs damit aber auch nicht hinbekommen.

    Folgendes habe ich probiert:

    typedef void __fastcall (__closure *TNotifyEvent)();
    TNotifyEvent   FMyAfterOpen;
    __property TNotifyEvent   AfterOpen    = {read=FMyAfterOpen, write=FMyAfterOpen};
    

    Das bringt mir die Fehlermeldung:

    [C++ Fehler] EasyComm.h(57): E2015 Mehrdeutigkeit zwischen 'TNotifyEvent' und 'Classes::TNotifyEvent'

    Wenn ich sie dann halt mit Classes:: schreibe bekomme ich die Fehlermeldung das der Aufruf der Funktion zu wenig Parameter beinhaltet, obwohl ich doch gar keine vorgesehen habe.

    Kann mir da bitte jemand weiterhelfen.



  • Hab meinen Fehler schon gefunden. Lag daran das TNotifyEvent immer den Pa. System::TObject *Sender hat.
    Kann ich überhaupt irgendwie eine Ereignisbehandlungsmethode erstellen die keine Parameter hat?


Anmelden zum Antworten