Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

Drag&Drop файлов из своей программы во внешние приложения.   Найти похожие ветки 

 
DVM ©   (2003-05-07 14:28) [0]

Подскажите как можно реализовать Drag&Drop файлов между моей программой и внешними приложениями.
Принять файлы я, разумеется, могу: обрабатываю сообщение WM_DROPFILES, но как В ОБРАТНУЮ сторону?
Допустим есть ListView(перетаскивание внутри LV включено) со списком файлов. Требуется сделать так, чтобы файлы из списка можно было перетащить в другое приложение.
(как это делают многие программы Проводник, WindowsCommander).


 
MBo ©   (2003-05-07 15:18) [1]

Реализовать интерфейсы IDragSource,IDataObject


 
DVM ©   (2003-05-07 16:10) [2]

А нет ли у кого примеров создания подобного? Тема довольно непростая.


 
MBo ©   (2003-05-07 16:33) [3]

Готового нет. Довольно объемно получается.
Суть в том, что в DataObject.GetData заполняется структура medium,в hglobal которой помещается структура TDropFiles. Я делал подобное - создавая формат CF_HDROP буфера обмена, чтобы затем вставить файлы с помощью Paste.
Здесь же еще надо позаботиться об описании формата -получив IEnumFormatEtc в соотв. функции DataObject
Кроме того, в QureyGetData надо проверять содержимое входного параметра. Остальные методы не столь существенны.


 
MBo ©   (2003-05-07 16:34) [4]

Кстати, Drag"n"Drop Component Suite (Anders Melander)
умеет много всяких гитик ;)


 
DVM ©   (2003-05-07 17:20) [5]


> MBo

Спасибо.



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

Текущий архив: 2003.07.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
1-20072
hex_for_delphi
2003-06-24 00:37
2003.07.07
как загружать из внешнего файла в масив и обратно.


14-20188
KaLGaN
2003-06-19 02:59
2003.07.07
У кого-нить есть примеры алгоритмов для обмена данными по сети?


11-20028
Alexander
2002-10-29 19:41
2003.07.07
После обновления до 1.56 не могу кинуть на форму KOLMHXP


7-20325
Mikes
2003-04-23 13:11
2003.07.07
Как узнать BIOS ID


3-19968
Солер
2003-06-11 18:52
2003.07.07
Возможен ли такой запрос?