Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: 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 вся ветка

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.027 c
1-1118060645
Goga
2005-06-06 16:24
2005.06.29
Доступ к реестру из службы


14-1117391037
Cerberus
2005-05-29 22:23
2005.06.29
Ностальгия


4-1115054643
Гном23
2005-05-02 21:24
2005.06.29
о dll -ках


3-1116312633
ANB
2005-05-17 10:50
2005.06.29
Как побыстрее удалить большую часть записей из таблицы ?


3-1116023469
VarAX
2005-05-14 02:31
2005.06.29
Как InterBase заставить с русским работать