Delphi. Иерархические данные. DBTreeView своими руками. Переподчинение узлов

Данная статья развивает предыдущие 2 из цикла DBTreeView своими руками и показывает как можно переподчинить узлы. Статьи основаны на книге Д.Осипова Delphi и базы данных c моими небольшими изменениями.

21

 

22

 

23

 

Как видно, переподчинение произошло и в базе данных. 

Начали!

Добавляем ещё один компонент запроса

25

Переподчинение происходит при переносе мышью узлов дерева, технически это Drag&Drop, который успешно поддерживается Delphi. Итак, посмотрим, что у нас есть.

Объявляем DragNode в Private секции

Нам нужно обработать 3 события

24

 

On StartDrag

On DragOver

OnDragDrop

Запуск механизма DragDrop в событии MouseMove