Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Помогите с TreeView   Найти похожие ветки 

 
bobby ©   (2012-04-21 04:33) [0]

Здравствуйте.
Обыскал все форумы, пролистал кучу справочников (Библия делфи и всё что есть в эл. виде на ПК) но не могу найти ответ на элементарный вопрос.
Неужели у компонента TreeView нет возможности узнать количество родительских элементов.
В поставленной задаче надо просто почистить все родит. элементы и заполнить их другими данными.

for i:=0 to twSteak.Items.Count -1 do twSteak.Items.Item[i].DeleteChildren;

В данном случае twSteak.Items.Count возвращает мне полное количество всех элементов TreeView.
Помогите пожалуйста узнать кол-во родительских элементов.

[Есть возможность почистить всё и заново заполнить - но это же неправильно :(]


 
MBo ©   (2012-04-21 05:59) [1]

Каких элементов? Уточните, что имеется в виду под родительскими.


 
bobby ©   (2012-04-21 07:12) [2]

Я короче вообще ничего не пойму уже.
Я не могу заполнить TreeView через цикл:


//Сначала создаю список родителей
for i:=0 to n do twSteak.Items.Adв(nil,"Родитель-"+IntToStr(i));

потом далее в программе всех родителей надо заполнить

for i:=0 to n do
  for J:= 0 to 3 do  twSteak.Items.AddChild(twSteak.Items.item[i],"Дочерь-"+IntToStr(j));//Тоесть хочу чтоб у каждого родителя было по 3 дочери!

Я даже на этом заступорился! Помогите плизз!


 
bobby ©   (2012-04-21 07:15) [3]

Забыл дописать.
Тут то у меня и получается 3 дочери у первого родителя, потом 3 дочери у первой дочери первого родителя и т.д.
Остальные родители пусты!

Как мне после цикла J сказать чтоб он перешел к другому родителю после заполнения первого?


 
MBo ©   (2012-04-21 07:54) [4]

GetFirstNode
GetNextSibling


 
bobby ©   (2012-04-21 08:33) [5]

GetFirstNode помог занести всех дочерей в первого родителя.
Теперь у меня все дочери в первом родителе.

А по поводу GetNextSibling - я не пойму как его тут использовать(

for i:=0  to form1.Sectors.Count-1 do
  begin
     Nodes:=form1.twSteak.Items.GetFirstNode;
     for j:= 0 to 3 do
       begin
          Form1.twSteak.Items.AddChild(Nodes,intToStr(j));
       end;
  end;


 
MBo ©   (2012-04-21 08:41) [6]

Обход первого уровня дерева
Node := GetFirstNode;
while Node <> Nil do begin
 //работаем с узлом
 //
 Node :=Node.GetNextSibling;
end;


 
bobby ©   (2012-04-21 08:46) [7]

Добился! Только хотел написать
Nodes:=form1.twSteak.Items.GetFirstNode;
for i:=0  to form1.Sectors.Count-1 do
  begin
     for j:= 0 to 3 do
       begin
          Form1.twSteak.Items.AddChild(Nodes,intToStr(j));
       end;
     Nodes:=Nodes.getNextSibling;
  end;
end;


 
bobby ©   (2012-04-21 08:48) [8]

Ой Пасибки!!! Дай Бог тебе здоровья!



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

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

Наверх




Память: 0.46 MB
Время: 0.064 c
15-1353171765
plr
2012-11-17 21:02
2013.03.22
9 bit / бит четности


15-1330891352
KilkennyCat
2012-03-05 00:02
2013.03.22
Спутниковое телевидение


2-1330854206
wymkent
2012-03-04 13:43
2013.03.22
HelpDesk


15-1328642557
Юрий Зотов
2012-02-07 23:22
2013.03.22
И снова нужен человек


2-1344085484
MS Access
2012-08-04 17:04
2013.03.22
Сортировка по части поля





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский