Форум: "Компоненты";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];
ВнизМожно ли скреститьTreeView с Fields Editor Найти похожие ветки
← →
Anarki © (2005-10-26 01:16) [0]Доброго времени суток, мастера!
Хочу чтобы св-ва объектов, прилинкованных к узлам дерева, редактировались в инспекторе объектов типа как сделано в fields editor. Объекты могут быть порождены от одного класса.
Возможно ли это? Советуют использовать коллекции, но как я понимаю с помощью коллекций нельзя сделать иерархическую структуру как у дерева. Если я ошибаюсь, подскажите, пожалуйста, как.
← →
Юрий Зотов © (2005-10-26 03:06) [1]> Хочу чтобы св-ва объектов, прилинкованных к узлам дерева,
> редактировались в инспекторе объектов
1. Прилинкованный к узлу объект должен быть потомком TPersistent и у него должен быть замещен метод AssignTo.
2. Пишете свой класс узла (потомок TTreeNode). В конструкторе создаете прилинкованный объект, в деструкторе уничтожаете его (ссылка на объект хранится в приватном поле). Вводите published-свойство, дающее доступ к прилинкованному объекту (по чтению - напрямую к полю, по записи - через метод Set, в котором вызывается Assign).
3. В дереве замещаете метод CreateNode (или используете событие OnCreateNodeClass), чтобы создавались узлы Вашего класса.
> с помощью коллекций нельзя сделать иерархическую структуру
Ничто не мешает элементу коллекции содержать published-свойство, ссылающееся на такую же (или другую) коллекцию. Получим дерево.
Страницы: 1 вся ветка
Форум: "Компоненты";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c