none
Flackernder Cursor während des Drag&Drop RRS feed

  • Frage

  • Hallo zusammen!

    weiß jemand, was man gegen den flackernden cursor machen kann. Ich benutze Drag&Drop Technoligie um bestimmte Objekte aus einem View in eine Tabelle aus anderem View zu ziehen. Dabei flackert der cursor. Wenn ich den cursor auf eine leere Stelle im View(nicht auf die Tabelle) ziehe, dann flackert er nicht, nur wenn ich in auf den Tabellen-Control ziehe. 

    Danke im Voraus


    Montag, 18. Juli 2011 14:14

Alle Antworten

  • Was machst Du in WM_SETCURSOR?
    Oder verwendest Du bei dem Verfahren das Ole Drag&Drop?


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Montag, 18. Juli 2011 14:27
    Moderator
  • ich weiß es nicht genau, ich arbeite an einem bestehenden Projekt, ich habe im code die Funktionen OnDrop, OnDragEnter und OnDragOver.
    Montag, 18. Juli 2011 14:37
  • Und wie wird die Drag-Operation gestartet?
    Was hast Du für einen WM_MOUSEMOVE Handler?
    Was hast Du für einen WM_SETCURSOR Handler?


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Montag, 18. Juli 2011 14:50
    Moderator
  • Ich würde mal sagen das dein Cursor immer Aktualisiert wird, wenn die Maus über dem Tabbelen-Control ist.Zuerst löschst du ihn und dann zeichnest du ihn neu, und das flackert dann.

    Mach es doch so das du zuerst überprüfst ob Elemente mit der Maus gezogen werden, und wenn ja nur dann der Cursor aktualisiert wird.


    VisualCPlusPlus
    Dienstag, 19. Juli 2011 15:56
  • Man kann keinen Cursor löschen ;) Man setzt einen neuen.

    Das Problem liegt in SetCursor/WM_MOUSEMOVE.
    Wenn ein Maus-Capture gesetzt ist (davon ehe ich aus bei einem Drag&Drop), sollte nur im Quellfenster eine WM_MOUSEMOVE Nachricht behandelt werden.


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Mittwoch, 20. Juli 2011 06:15
    Moderator
  • Ich dachte immer, najagut, danke für die Berichtigung
    VisualCPlusPlus
    Mittwoch, 20. Juli 2011 16:03