допустим, требуется на объект, например на TreeView перетаскивать файлы (напр. из Explorer'а). для этого окно регистрируется через DragAcceptFiles(), затем перехватывается WM_DROPFILES. при этом, при начале перетаскивания из Explorer'а, мышь захватывается тем окном, откуда шло перетаскивание, и, соответственно, TreeView сообщений WM_MOUSEMOVE не получает. но, допустим, требуется ещё до отпускания мыши и падения файлов (вызова WM_DROPFILES) отслеживать перемещения мыши по окну. как это сделать? какие сообщения следует перехватывать?
спасибо.
Re: перехват мыши при drag-n-drop файлов на объект
Здравствуйте, alive, Вы писали:
A>Здравствуйте, mospehraict, Вы писали:
M>>какие сообщения следует перехватывать?
A>Ну, например, в OnDragOver есть координаты. Да и в других событиях, которые вызываются при перетаскивании тоже есть.
OnDragOver при перетаскивании из другого приложения не вызывается.
Re[3]: перехват мыши при drag-n-drop файлов на объект
Здравствуйте, alive, Вы писали:
A>Здравствуйте, mospehraict, Вы писали:
M>>OnDragOver при перетаскивании из другого приложения не вызывается.
A>Да, это я погорячился. Можно попробовать использовать DragQueryPoint.
из Delphi Help:
"The DragQueryPoint function retrieves the position of the mouse pointer _at the time a file was dropped_.
The window for which coordinates are returned is the window that received the WM_DROPFILES message."
я как раз использую её для сбора координат при перехвате WM_DROPFILES. но это не то, что мне нужно, так как мне нужно собирать координаты мыши _до_ сброса файлов.
Re[5]: перехват мыши при drag-n-drop файлов на объект
Здравствуйте, mospehraict, Вы писали:
M>я как раз использую её для сбора координат при перехвате WM_DROPFILES. но это не то, что мне нужно, так как мне нужно собирать координаты мыши _до_ сброса файлов.
Ну ладно. Последняя попытка
Посмотрите в MSDN описание интерфейса IDropTarget. Подойдет?
Здравствуйте, alive, Вы писали:
A>Здравствуйте, mospehraict, Вы писали:
M>>я как раз использую её для сбора координат при перехвате WM_DROPFILES. но это не то, что мне нужно, так как мне нужно собирать координаты мыши _до_ сброса файлов.
A>Ну ладно. Последняя попытка :) A>Посмотрите в MSDN описание интерфейса IDropTarget. Подойдет?
уже подошло, спасибо :-)
я просто на самом деле искал более простой способ.