Вниз
Скачать: 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.024 c
14-1117216020
Человек
2005-05-27 21:47
2005.06.29
Авария в Сергиевом Посаде?


3-1116567937
yk
2005-05-20 09:45
2005.06.29
Выборка с учётом не существования записей


3-1116574168
Hereticsoul
2005-05-20 11:29
2005.06.29
Sqlite+Delphi


9-1107804770
Micke
2005-02-07 22:32
2005.06.29
2D движок. Третья демка. Очередная :)


14-1117694349
YurikGL
2005-06-02 10:39
2005.06.29
Старая мама и COM-порт




   Наверх