Probleme mit MessageHandler



  • So,
    möchte einen MessageHAndler für ein MouseMove Event bauen. Leider gibt der COmpiler mir einen Fehler. TMessage* erwartet TMessage bekommen. In allen Beispielen die ich geshene habe wird aber TMessage, nicht TMessage* angegeben. WO ist mein Problem. Finde es einfach nicht. Gebe ich TMessage* an, gibt es eine Exception wenn die Funktion aufgerufen wird.

    Code 1:
    void __fastcall MyMouseMove(TMessage* Message);
    BEGIN_MESSAGE_MAP
    VCL_MESSAGE_HANDLER(WM_MOUSEMOVE, TMessage , MyMouseMove) -> Hier Compilerfehler
    END_MESSAGE_MAP(TComponent)

    Code 2 : (wird comiliert, bringtt aber Exception bei Aufruf von MyMouseMove.

    void __fastcall MyMouseMove(TMessage* Message);
    BEGIN_MESSAGE_MAP
    VCL_MESSAGE_HANDLER(WM_MOUSEMOVE, TMessage* , MyMouseMove) -> Hier Compilerfehler
    END_MESSAGE_MAP(TComponent)

    Jörn



  • Hallo

    Du must eine Referenz verwenden, siehe hier.

    bis bald
    akari



  • void __fastcall MyMouseMove(TMessage& Message);
    
    BEGIN_MESSAGE_MAP                                      
    MESSAGE_HANDLER(WM_MOUSEMOVE, TMessage,  MyMouseMove)      
    END_MESSAGE_MAP(TForm)
    


  • @akari:
    Na klar, manchmal sieht man den Wald vor lauter Bäumen nicht.....Danke


Anmelden zum Antworten