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

Вниз

Drag&Drop файлов на форму.   Найти похожие ветки 

 
Yuri Btr ©   (2002-07-26 09:35) [0]

Прочитал статью на этом форуме "Примеры использования Drag and Drop для различных визуальных компонентов". Там описан пример перетаскивания файлов из проводника на форму (в любое место). И теперь у меня пара вопросов к мастерам:
Как можно реализовать добавление имён файлов именно в определённый компонент на форме, причём только если именно в этот компонент были брошены файлы.
И как соответственно запретить Drop на не предназначенных для этого компонентах. (Accept:=false не работает)

Я так понимаю надо юзать структуру Msg сообщения WM_DROPFILES.
Но в MSG не содержится никакой информации о handle приёмника?!


 
MBo ©   (2002-07-26 10:13) [1]

Для этого придется писать свой наследник компонента, который обрабатывает сообщение WM_DROPFILES, и регистрировать его с помощью DragAcceptFiles. Вариант - субклассирование контрола с подменой его WindowProc.

Если задача будет слишком сложна, рекомендую использовать
библиотеку Drag and Drop Component Suite
Anders Melander
(codecentral.borland.com или Torry.ru)


 
Yuri Btr ©   (2002-07-26 10:30) [2]

to MBo
Спасибо, действительно задача не так проста. Но я не могу использовать в программе посторонние компоненты, я пытаюсь всё сделать руками, и нашёл такое совсем "простое" решение - я определяю приёмник по открытой странице TabSheet - благо что он у меня по одному приёмнику на каждой странице блокнота. Иначе бы пришлось определять компонент приёмник по позиции мыши во время Drag&Drop.


 
Набережных С.   (2002-07-26 19:36) [3]


> MBo © (26.07.02 10:13)

Можно просто переустановить оконную процедуру.



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
1-23994
Brand
2002-07-28 00:29
2002.08.08
Работа с реестром


3-23962
Yuri Btr
2002-07-19 12:11
2002.08.08
Связанные таблицы в Access


1-24028
jen_bond
2002-07-29 08:56
2002.08.08
запуск приложения в


1-24082
URustam
2002-07-26 14:03
2002.08.08
Помогите!!!


14-24217
IlyaA
2002-07-12 12:52
2002.08.08
Программерский клуб.