Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по компоненту 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.047 c
14-1117391999
Layner
2005-05-29 22:39
2005.06.29
Свой макроязык


1-1117703923
Rentgen
2005-06-02 13:18
2005.06.29
Massiv[ALL]:=99;


14-1117821779
sofs
2005-06-03 22:02
2005.06.29
прошу прощения!


14-1117211002
Гаврила
2005-05-27 20:23
2005.06.29
Просто реплика


14-1117548431
X9
2005-05-31 18:07
2005.06.29
Вопрос электронщикам - работа с микроконтроллерами Atmel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский