Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Снова о TreeView. Проблемы с корнем. [D7, WinXP]


Master_Of_Puppets ©   (2008-02-09 19:40:00) 

Опять у меня довольно тривиальный (для некоторых, к числу коих я пока что не отношусь) вопрос. Вот его суть: я добавляю в TreeView (в моем приложении) ноды таким вот способом:

treeMain.Items.BeginUpdate;
while ... do
 with treeMain do
   begin
     Items.AddChild(nil, 'bla-bla-bla');
   end;
 end;
treeMain.Items.EndUpdate;

Затем я пытаюсь достучатся до добавленных нодов с помощью следущего кода:

trNode := treeMain.Items.Item[index];

Но мне постоянно возращается только первый нод, независимо от значения переменной "index".


Master_Of_Puppets   (2008-02-09 23:43:00) [1]

Когда копировал, удалял лишнюю часть кода (не имеющюю отношения к вопросу) - видать затронул "begin". Проверял путем считывания с нода свойства Text. Вопрос снимается, ибо реализовал чуть по другому: создал общий корень и обращаюся к потомкам вот так:

trNode := treeMain.Items[0];

...
trSubNode1 := trNode.Item[index1];
trSubNode2 := trNode.Item[index2];


trubin   (2008-02-09 23:14:00) [2]


> кстати, приведенный в [0] код вообще неработоспособен, там
> begin не хватает, что в определенном контексте может вообще
> дать непредсказуемый эффект.


Согласен


> trNode := treeMain.Items.Item[index];
>
> Но мне постоянно возращается только первый нод, независимо
> от значения переменной "index".


но вот это утверждение очень сомнительно :)


DVM   (2008-02-09 23:06:00) [3]


> trubin ©   (09.02.08 23:03) [3]

кстати, приведенный в [0] код вообще неработоспособен, там begin не хватает, что в определенном контексте может вообще дать непредсказуемый эффект.


trubin   (2008-02-09 23:03:00) [4]


> > trNode := treeMain.Items.Item[index];
> >
> > Но мне постоянно возращается только первый нод, независимо
>
> > от значения переменной "index".
>
> trNode := treeMain.Items[index];


Одно и тоже, однако

вопроса не снимает: "Как проверял?"


DVM   (2008-02-09 22:59:00) [5]


> trNode := treeMain.Items.Item[index];
>
> Но мне постоянно возращается только первый нод, независимо
> от значения переменной "index".

trNode := treeMain.Items[index];


trubin   (2008-02-09 22:37:00) [6]


> Но мне постоянно возращается только первый нод, независимо
> от значения переменной "index".


Уверен? Как проверял?


Наверх

Титульная страница Поиск, карта сайта Написать письмо