Родились сегодня:
Антонина


Лидеры рейтинга

ID: 226425

Konstantin Shvetski

Модератор

672

Россия, Северодвинск


ID: 259041

Алексеев Владимир Николаевич

Мастер-Эксперт

325

Россия, пос. Теплоозёрск, ЕАО


ID: 401284

Михаил Александров

Академик

278

Россия, Санкт-Петербург


ID: 325460

CradleA

Академик

211

Беларусь, Минск


ID: 401888

puporev

Профессор

140

Россия, Пермский край


ID: 400815

alexleonsm

6-й класс

130


ID: 137394

Megaloman

Мастер-Эксперт

120

Беларусь, Гомель


8.8.12

06.05.2021

JS: 2.8.16
CSS: 4.5.4
jQuery: 3.6.0
DataForLocalStorage: 2021-05-06 21:16:03-standard


Создание программ на языках Pascal, Delphi и Lazarus.

Администратор раздела: Зенченко Константин Николаевич (Старший модератор)

Консультация онлайн # 159600

Раздел: Pascal / Delphi / Lazarus
Автор вопроса: Oleg Adamenko
Дата: 04.02.2009, 13:52 Консультация закрыта
Поступило ответов: 2

Здравствуйте уважаемые эксперты. Есть стандартная компонента TreeView. Я ее использую для создания плана (структуры) документа, например, большого доклада и генерации, на его основе, содержания. Я могу разворачивать, сворачивать дерево, добавлять и переименовывать узлы и т.д. Но при добавлении узел показывается внизу. Как вставлять узел между узлами, как изменять следование узлов в дереве и возможно ли изменять важность узла (переводить его на подуровень, либо, наоборот выше)? Возможно есть компоненты, более подходящие для этого? Заранее извините за, наверное, элементарный вопрос.

Ответ # 242894 от monah
Здравствуйте, Oleg Adamenko!

Для добавления узла в любое место необходимо указать его родителя - другой узел , свойство parent? если не ошибаюсь - пишу на память. Либо используя функцию родителя которая вернет ссылку на созданный узел который следует заполнять значиниями (caption). Перемещать же узел возможно создав новый в нужном месте и удалив старый узел.

Последнее редактирование 04.02.2009, 20:26 deepTeNk (Мастер-Эксперт)


monah

Посетитель
04.02.2009, 15:21
Ответ # 242948 от Евгений/Genia007/
Здравствуйте, Oleg Adamenko!
Возможность перетаскивания в компоненте TreeView можно при помощи такого кода:
Свойство Dragmode компонента TreeView нужно поставить в dmAutomatic.

Приложение:


Евгений/Genia007/

Профессионал
05.02.2009, 09:49
Мини-форум консультации # 159600
monah

1

= общий =    04.02.2009, 17:20

Перемещать не пробовал. Я добавлял новый узел к выделеному. Указав его в качестве родителя.

неизвестный

2

= общий =    04.02.2009, 18:21

[04.02.2009, 17:20]
Перемещать не пробовал. Я добавлял новый узел к выделеному. Указав его в качестве родителя.
-------
monah, Практикант

Но при этом узел выводится ниже всех узлов. А если добавлять подчиненный узел, он будет добавлен под выделенным узлом, но первым
Мне же надо свободно изменять порядок следования узлов при выводе их. Я пытаюсь с помощью этого компонента сформировать структуру (содержание) документа. Может, есть другие компоненты для этого?

PGM

3

= общий =    05.02.2009, 01:02

А что Insert/InsertNode не работает? Там же вроде как раз перед каким вставлять можно указать - вот вам и "любое место".

А вообще каждый узел в дереве это объект и объекты по дереву можно перемещать - обратите внимание на метод MoveTo для отдельно взятого узла.

q_id

Евгений/Genia007/

Профессионал

ID: 153662

4

= общий =    05.02.2009, 20:12

Вот URL >>ссылка на архив с этой программой, у меня всё работает.
Проверте

Свойство Dragmode компонента TreeView нужно поставить в dmAutomatic.

=====
Мои программы со статусом freeware для Windows на моём сайте jonix.ucoz.ru

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Лучшие эксперты раздела

puporev

Профессор

Рейтинг: 140

Зенченко Константин Николаевич

Старший модератор

Рейтинг: 74

Вадим Исаев ака sir Henry

Мастер-Эксперт

Рейтинг: 2

Степанов Иван /REDDS

4-й класс

Рейтинг: 1

Лысков Игорь Витальевич

Мастер-Эксперт

Рейтинг: 0

Асмик Гаряка

Советник

Рейтинг: 0