TrackMouseEvent



  • Hallo,

    ich habe ein kleines Problem:
    In meinem Programm möchte ich gerne realisieren, dass es etwas tut, solange man den Button gedrückt hällt und damit aufhört, wenn man den Button loslässt.
    Das funktioniert schon ganz gut.

    Allerdings erkennt das Programm nicht, wenn man mit der Mouse den Button loslässt. Hier verhällt es sich weiterhin, asl wenn man den Button immer noch drücken würde.
    Das gedrückt halten ist mit OnLButtonDown und OnLButtonUp realisiert.

    Nun dachte ich mir nach einigem lesen, dass ich hier vielleicht mit einem TrackMouseEvent was werden könnte, habe das aber noch nicht benutzt und dann muss ich noch dazu sagen, dass ich erst kürzlich begonnen habe, für Windows Programme zu schreiben. Laufen soll das Programm dann auf einem PDA, hierfür habe ich als Projekt-Umgebung in meinem Visual-Studio Pocket PC 2003 eingestellt.

    Wäre super, wenn mir hierbei jemand ein wenig Rat geben könnte.

    Vielen Dank schonmal im voraus.

    Grüße
    Riewert


  • Mod

    Ist das ein Button, dann bekommst Du mit Sicherheit mit, wenn der Button losgelassen wird. Ein Button setzt in OnLButtonDown ein Capture. Der OnLButtonUp Event kommt also mit 100%.
    Zudem ist das Verhalten eines Buttons so, dass nicht durch den Click eine Command Nachricht versendet wird, sondern erst beim Loslassen der Maustaste.



  • Habe leider einen kleinen Fehler in der obigen Beschreibung gemacht, sorry.

    Das Programm erkennt auch, wenn der Button losgelassen wird. Das OnMouseUp-Ereignis erkennt es. Der Fehler passiert, wenn bei gedrückter Maustaste der Cursor von der Taste heruntergezogen wird. Dann bleibt die Taste gedrückt und erkennt nicht, dass der Cursor von der Taste gerutscht ist.

    Vielleicht kann mir dabei bitte jemand noch einen Rat geben.

    Schonmal vielen Dank.

    Grüße
    Riewert


  • Mod

    Und wenn das ein Button ist, dann hast Du Blödsinn beim überschreiben gemacht.
    Habe ich doch schon geschrieben, dass ein Button den Capture setzt.
    Hast Du die Basisklasse nicht aufgerufen?
    Zeige und Deinen OnLButtonDown Handler!


Anmelden zum Antworten