Форум программистов, компьютерный форум, киберфорум
Lazarus
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
356 / 124 / 3
Регистрация: 25.01.2012
Сообщений: 5,459
Записей в блоге: 118
1

Перетаскивание ветки в TTreeView

13.03.2018, 17:39. Показов 1897. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Допустим такая ситуация, что нужно перетащить ветку в TTreeViev в другой узел. Есть подозрения что это уже реализовано в среде.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2018, 17:39
Ответы с готовыми решениями:

JTree. Каким образом при добавлении ветки в дерево можно задавать свойства этой ветки
День добрый. По служебным целям понадобилось программу написать. Яву раньше почти не использовал....

TTreeView
Подскажите, а можно ли листы в этом компоненте выводить в две строки?

TTreeView
Здравствуйте. Возможно ли в TTreeView сделать чтобы иконка ноды была справа от текста, а не слева?

TTreeView и DBGrid
Здравствуйте! У меня на форме есть TreeView и DBGrid. На главной форме есть TTreeView(рабочий,...

2
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32830 / 21168 / 8147
Регистрация: 22.10.2011
Сообщений: 36,429
Записей в блоге: 8
13.03.2018, 18:04 2
Лучший ответ Сообщение было отмечено Hretgir как решение

Решение

Грубо говоря - достаточно выставить для дерева DragMode в dmAutomatic, и написать два обработчика:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
// OnDragDrop, чтобы по отпусканию мыши скопировать протягиваемую ветку как дочернюю в тот узел, надо которым мышь отпущена
procedure TForm1.TreeView1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
  TreeView1.Selected.MoveTo(TreeView1.GetNodeAt(X, Y), naAddChild);
end;
 
// OnDragOver, чтобы разрешить бросать ветку в том же дереве, из которого ее тянут
procedure TForm1.TreeView1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  Accept := Sender = Source;
end;
, ну, а совершенствовать/добавлять фичи можно до бесконечности
1
356 / 124 / 3
Регистрация: 25.01.2012
Сообщений: 5,459
Записей в блоге: 118
13.03.2018, 18:59  [ТС] 3
Цитата Сообщение от volvo Посмотреть сообщение
совершенствовать/добавлять фичи можно до бесконечности
а больше и не надо ничего, что ещё можно сделать с деревом кроме как "привить" или "обрезать" ветку...
ну на дрова попилить можно, на доску
0
13.03.2018, 18:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2018, 18:59
Помогаю со студенческими работами здесь

TTable и TTreeView
Ребят,вот у меня есть таблица (Парадокс) с 4 полями.И мне надо представить ее в виде дерева по 1...

Работа с TTreeView
Доброго времени суток!!! Вывожу большой список элементов в TreeView на прямую, из за этого...

TTreeView ondblclick
Приветствую, хочу слепить из TTreeView менеджер файлов, подскажите можно ли повесить dblclick на...

TTreeView динамически
Строю дерево динамически (используя запрос), в момент раскрытия ветки достраиваю ее, для этого для...

Очистить TTreeView
Что-то нет такой команды в википримерах... Разве это TMyObject(Node.Data).Free; про гугл забыл...

Ttreeview удалить группу
Здравствуйте. Вопрос такой. Есть код, который выводит в группу информацию (у предка есть несколько...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru