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

Вниз

DragAndDrop - краткий ликбез   Найти похожие ветки 

 
Ega23 ©   (2007-06-27 10:52) [0]

Начну с задачи:
1. Есть некая иерархическая структура - "модель объекта".
2. Есть некоторое количество, гм..., "пользователей"
3. Нужно сделать графический интерфейс настройки видимости части "модели объекта" для каждого из "пользователей".

Самое первое, что приходит в голову - 2 дерева. В одном - вся модель, в другом - то, что приписано данному "пользователю". Из первого дерева перетаскиваем ветки в другое.

Собственно, теперь вопросы. С DragAndDrop никогда не работал (не как юзер), поэтому можно сказать, что в этом я полный nil.
Вопрос 1: как такое дело реализовать в Delphi?
Вопрос 2 (на пятёрку): как эта технология работает в windows вообще? Т.е. кто за это отвечает, и что нужно добавить в приложение, чтобы в него можно было "таскать" некую метаинформацию из ОС?

К сожалению, сейчас времени на прочтение больших статей просто нет, первый вопрос нужно реализовать срочно. Поэтому, если возможно, как нибудь кратко отведьте на первый вопрос, и дайте ссылку на второй (обязательно прочитаю, т.к. самому стало интересно, но чуть позже).
Если есть пример в Demos - вообще супер (явным образом не увидел, но может в каком-нибудь проекте реализовано)


 
Игорь Шевченко ©   (2007-06-27 10:57) [1]


> Вопрос 2 (на пятёрку): как эта технология работает в windows
> вообще? Т.е. кто за это отвечает, и что нужно добавить в
> приложение, чтобы в него можно было "таскать" некую метаинформацию
> из ОС?


Ищи статью MBo в разделе "Статьи" на эту тему


 
Ega23 ©   (2007-06-27 10:58) [2]


> Ищи статью MBo в разделе "Статьи" на эту тему


Спасибо, сейчас распечатаю.


 
Ega23 ©   (2007-06-27 11:25) [3]

Игорь, ОГРОМНОЕ СПАСИБО за наводку - это именно то, что было нужно.
И, конечно, ОГРОМНОЕ СПАСИБО MBo © за ОТЛИЧНУЮ СТАТЬЮ!!!


 
Игорь Шевченко ©   (2007-06-27 11:30) [4]

Ega23 ©   (27.06.07 11:25) [3

Всегда пожалуйста :)
Я почему ее помню, хотя 5 лет прошло - я код тестировал к ней.


 
MBo ©   (2007-06-27 11:33) [5]

>чтобы в него можно было "таскать" некую метаинформацию из ОС?
Что имеется в виду? Если требуется что-то посерьезнее, чем имя файла перетащить из проводника, то придется использовать OLE Drag"n"Drop (реализовывать интерфейсы IDropTarget, IDataObject)

Есть библиотека Drag"n"Drop Component Suite (Anders Melander, Angus Johnson)


 
Ega23 ©   (2007-06-27 11:41) [6]


> Если требуется что-то посерьезнее, чем имя файла перетащить
> из проводника, то придется использовать OLE Drag"n"Drop
> (реализовывать интерфейсы IDropTarget, IDataObject)


Ну, я в общем, именно так и предполагал. На досуге обязательно почитаю (благо теперь ключевые слова IDropTarget и IDataObject известны).
Ещё раз большое спасибо!



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
2-1183463152
WASM
2007-07-03 15:45
2007.07.29
Как определить нажатые клавиши


15-1183328674
Германн
2007-07-02 02:24
2007.07.29
Какая всё-таки хорошая вещь - современные бытовые водонагреватели


2-1183491972
Ivolg
2007-07-03 23:46
2007.07.29
Использование без TMemoryStream


4-1171107679
Vemer
2007-02-10 14:41
2007.07.29
Убрать кнопку с панели задач средствами WinApi.


15-1183625889
@!!ex
2007-07-05 12:58
2007.07.29
Установка Linux виснет на форматировании винчестеров....