WM_MOUSEHOVER auf gezeichneten Objekten wie zB RoundRect???



  • Hallo.

    Ich probiere seit gestern, auf ein RoundRect, welches in der WM_PAINT gezeichnet wird, eine WM_MOUSEMOVE in Richtung einer WM_MOUSEHOVER -Nachricht auszuführen.
    Meiner Information nach soll es gehen, bei allen Elementen, die innerhalb meines Parents als Kinder deklariert sind, in dem ich vorher TrackMouseEvent ausführe und so weiter und so fort.
    Mir geht es hierbei aber nicht um Kindfenster, sondern im gezeichnete Objekte im Parentwindow.
    Meiner Überlegung nach müssen die Mousekoordinaten daraufhin kontrolliert werden, ob sie sie mit irgendwelchen Punkten meines RoundRectangles übereinstimmen, bzw. ob sie eine gemeinsame Menge bilden.
    Ich habe WM_MOSEMOVE versucht zu behandeln, in dem ich erstmal eine RoundRectRgn erteugt habe und ihr die gleichen koordinaten übergeben habe, wie dem Roundrectangle in der WM_PAINT.
    Diese habe ich durch SelectClipRgn ausgewählt, weil ich dachte, deren Rückgabewert wäre eins, wenn die Mouse innerhalb der RoundRectRegion ist, und daraufhin was passiert (Testweise MessageBox).
    Allerdings wird der Wahrheitswert wohl nicht richtig ausgewertet. Nur -1 funktioniert, das heisst: Wenn sich die Mouse im Window befindet, ok.

    Meine Absicht ist also:
    Eine Aktion auslösen, wenn die mouse auf eine gezeichneten Form gezogen wird, bzw sie wieder verlässt.
    Nur habe ich mich da irgendwo verheddert.
    Nur wo???


  • Mod

    http://msdn.microsoft.com/msdnmag/issues/1000/c/

    Auch wenn es MFC ist zeigt es die grundlegenden Techniken!



  • schonmal nett. Ich dachte schon: KEINER KANN MICH LEIDEN 😞 !
    Nein, hat mich nur gewundert, dass die Antwort so auf sich warten liess.
    Dank Dir.
    Bis demnächst


Anmelden zum Antworten