Fixierter Cursor



  • Hallo,

    Ich habe ein Panel, und wenn der Benutzer darin Rechtsklickt (und gedrückt hält), soll der Mauscursor fixiert bleiben (an der Stelle, an der er Rechtsgeklickt hat). Die Maus soll sich effektiv aber dennoch weiterbewegen können (nur der sichtbare Mauscursor soll fixiert bleiben).

    Probiert hab ich es so:

    Void pnl_MouseDown(Object^ sender, MouseEventArgs^  e) {
       if(e->Button == MouseButtons::Right) 		
          point = e->Location;			
    }
    
    Void pnl_MouseMove(Object^ sender, MouseEventArgs^  e) {
       if(e->Button == MouseButtons::Right) {
          Cursor->Position = point;				
    }
    

    Die Logik von dem Code: Wenn der User rechtsklickt, merk ich mir die Klickposition in point. Wenn der Benutzer dann die Maus bewegt, setze ich ständig die Cursorposition auf point. Aber das klappt nicht; die Maus bewegt sich garnicht mehr.
    Weiß wer wie ich das machen könnte, dass sich die Maus im Grunde frei bewegt (und move events feuert), aber der Cursor festklebt?



  • Wie wärs, dass wenn die rechte Maustaste gedrückt wird, du alles auf dem Fenster als bmp speicherst und du dann den Cursor unsichtbar lässt und stattdessen immer nur das Bild anzeigst. Und wenn man die Taste wieder loslässt der Cursor wieder angezeigt wird. Beim nächsten Mal überschreibst du einfach wieder das Bild und machst alles wieder von vorne.
    Ich weiß zwar nicht wie man es in C++/Cli macht da ich mich nur in WinForms auskenne, aber das wäre eine Möglichkeit.


Anmelden zum Antworten