Вниз
Скачать: CL | DM;

Вопрос по компоненту TreeView   Найти похожие ветки 

← →
remlin   (2005-06-02 10:11) [0]

Как в компоненте TreeView узнать, выделенный узел является главным узлом или дочерним?
И ещё мне надо связать с каждым узлом дерева текстовые данные, например: описание, id узла, ссылка на файл и т.д. Как это можно сделать наиболее простым способом?
Спасибо.


← →
Ega23 ©   (2005-06-02 10:14) [1]

Как в компоненте TreeView узнать, выделенный узел является главным узлом или дочерним?

TTreeNode.Parent

И ещё мне надо связать с каждым узлом дерева текстовые данные, например: описание, id узла, ссылка на файл и т.д. Как это можно сделать наиболее простым способом?

TTreeNode.Data  - можешь туда любой указатель впихнуть. Например, на свою структуру, или класс.


← →
-=S.S=- ©   (2005-06-02 11:25) [2]

If TreeView1.Selected.getFirstChild = nil then
 Shwmessage("Узел не имеет дочерних элементов")


← →
remlin   (2005-06-02 12:31) [3]

-->> s.s.
можно и так:
if TreeView.Selected.HasChildren then
Shwmessage("Узел имеет дочерние элементы")


← →
remlin   (2005-06-02 12:34) [4]

А можно примерчик по TTreeNode.Parent (Ega23). Как это реализовать?


← →
begin...end ©   (2005-06-02 12:35) [5]

if Assigned(TreeView.Selected) then
 if TreeView.Selected.Level = 0 then
   // Выбран главный узел
 else
   // Выбран дочерний узел


← →
Ega23 ©   (2005-06-02 12:44) [6]

А можно примерчик по TTreeNode.Parent (Ega23). Как это реализовать?

if not Assigned(Node.Parent) then // корневой узел
else // дочерний узел.

Вообще - вариантов - масса. Можно и с Level, как begin...end ©   (02.06.05 12:35) [5] написал.


← →
remlin   (2005-06-02 13:09) [7]

Спасибо!


← →
remlin   (2005-06-03 12:57) [8]

А можно примерчик про присваивания каждому узлу объекта. А то что-то получается - да не так.
Надо каждому узлу присвоить такую структуру:
 StructFile = record
              ItemName:string; // имя узла
              ItemFunction:string; // просто текст
              ItemDescription:string; //описание
              ... //что-то ещё
              end;

При создании узла функцией AddObject появляется модальное окно, где я в Edit и заполняю поля структуры.
Потом задача стоит при закрытии приложения записать всё это в файл.А при открытии считать.При щелчке по узлу дерева должно появиться модальное окно со значениями полей структуры StructFile принадлежащей узлу.


← →
Ega23 ©   (2005-06-03 13:12) [9]


PStructFile=^StructFile;
StructFile = record
             ItemName:string; // имя узла
             ItemFunction:string; // просто текст
             ItemDescription:string; //описание
             ... //что-то ещё
             end;

var
p:PStructFile;
begin
New(P);
P^.ItemName="";
P^.ItemDescription=....
.....
Node.Date:=P;


end;


Естественно, не забыть Dispose сделать.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.029 c
14-1117292547
sasha86
2005-05-28 19:02
2005.06.29
Рекомендуемые видео ролики


5-1088065170
nejest
2004-06-24 12:19
2005.06.29
Проблема с переменными в классе.


6-1112317394
inew
2005-04-01 05:03
2005.06.29
Работа с Pop3Server в Indy10


4-1114667477
Bil Bal Dur
2005-04-28 09:51
2005.06.29
открыть Мой Компьютер


9-1110900256
.cpp
2005-03-15 18:24
2005.06.29
Интерактивная карта города




   Наверх