Entwickler-Ecke

Windows API - Drag-Drop Message (API)


Rool - So 09.02.03 13:41
Titel: Drag-Drop Message (API)
Ich habe einen Dialog, den ich über eine Res-Datei einbinde. Jetzt will ich in meiner Dialog-Prozedur:


Quelltext
1:
2:
function DialogProc(hwndDlg: HWnd; Msg: UINT; wParam: wParam;
   lParam: LPARAM): Bool; stdcall;


die Nachricht abfangen, wenn man in meiner Listbox (befindet sich auf dem Dialog) mit Drag&Drop beginnt, bzw. aufhört. Also wie in der VCL die Prozeduren:
OnDragOver, On DragDrop.

Wie lauten diese Nachrichten-Codes und geht das überhaupt über diese DialogProc-funktion?


derDoc - So 09.02.03 17:36

Du must die ListBox in eine DragListBox verwandeln. Dazu benutzt du MakeDragList(handle deiner ListBox). Dann kannst du folgende Messages abfangen:

DL_BEGINDRAG Die linke Maustaste wurde gedrückt

DL_CANCELDRAG Abbruch durch Rechtsklick oder Esc

DL_DRAGGING Die Maus wird bei gdrückter Taste bewegt

DL_DROPPED Die linke Maustaste wurde wieder losgelassen


Rool - Mo 10.02.03 17:13
Titel: ...
Die DL_... Konstanten funkionieren bei mir nicht, aber dafür wird jetzt auch eine WM_MOUSEMOVE Message gesendet, wenn die Maus mit gedrückter Maustaste bewegt wird. Das reicht mir schon. Vielen Dank für deine Hife!!!