Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];

Вниз

Прием файлов своим окном из проводника. Проблема.   Найти похожие ветки 

 
DVM   (2003-05-21 14:13) [0]

Возникла вот такая проблема. Требуется принять файлы своей формой из проводника. Само принятие проблем, разумеется, не вызывает (WM_DROPFILES), вопрос же вот в чем:
Пока файлы пролетают над моей формой, есть ли возможность как-то узнать о самом факте "пролета файлов" и о точке, где находится указатель мыши (надо для того, чтобы подсветить позицию в списке, который примет файлы). Указатель еще я могу отследить хуком, а вот факт перетаскивания?
Или все это возможно только реализовав в программе интерфейс IDropTarget?


 
MBo   (2003-05-21 14:17) [1]

Никаких сообщений форме при "проносе файлов" над ней не приходит.


 
DVM   (2003-05-21 14:27) [2]


> MBo ©

А не в курсе как Проводник это делает? (в смысле подсвечивает значки). Через интерфейсы это возможно?
Спасибо.


 
MBo   (2003-05-21 14:41) [3]

Через интерфейсы - да.
Предполагаю, что DragAcceptFiles(hwnd,True) создает скрытый системный объект, реализующий IDropTarget, который и отвечает на запросы DragObject-а из проводника.

Кстати, реализация IDropTarget существенно проще, чем DragSource.
В простейшем случае достаточно просто возвращать S_OK из всех функций, кроме Drop, где ьудет производиться извлечение имени файла ил списка из dataObj. Более развитая реализация может включать обработку DragEnter, тогда извлечение имен можно сделать и в нем, принимая решение о принятии файлов по каким-то параметрам.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.009 c
4-101024
Asteroid
2003-05-26 02:26
2003.07.31
Пара вопросов по child окну


1-100670
Salvator
2003-07-17 22:38
2003.07.31
Работа с Dll


7-101007
vvip
2003-05-20 08:50
2003.07.31
Мониторинг com-порта


14-100895
Tornado
2003-07-14 13:27
2003.07.31
DBGrid


1-100771
marconi
2003-07-15 23:38
2003.07.31
Все тот же СтрингГрид





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский