Dimon.Ru |
Отправлено: 15.01.2005, 11:57 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 92
|
Здрасьте
мне надо добавлять и удалять узлы из TTreeView.
но получается как-то коряво....
Добавлять мне надо перед или после выделенного узла, а удалать — выделенный.
Добавляю так:
CODE | ModulesTreeView->Items->Insert(ModulesTreeView->Items->Item[ModulesTreeView->Selected->Index],"Название узла"); |
Удаляю так:
CODE | ModulesTreeView->Items->Delete(ModulesTreeView->Items->Item[ModulesTreeView->Selected->Index]); |
в принципе — работает, но не могу добавить узел третьего уровня (испрользую для этого AddChild, но не помогает — добавляются только узлы второго уровня)
при удалении — удаляются только узлы, расположенные на первом уровне, дочерние узлы тоже не удаляются (только все вместе)
как быть? подскажите. примеров в справке не нашел.
спасибо! |
|
full_lamer |
Отправлено: 16.01.2005, 09:33 |
|
Машинист паровоза
Группа: Участник
Сообщений: 225
|
добавлять узлы проще используя AddChildObject.
|
|
Dimon.Ru |
Отправлено: 16.01.2005, 11:45 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 92
|
Thanx!
a mo*no nebol'shoy primerchik? |
|
full_lamer |
Отправлено: 16.01.2005, 12:32 |
|
Машинист паровоза
Группа: Участник
Сообщений: 225
|
CODE | TreeClients->Items->AddChildObject (Node, IBQuery->FieldByName ("LNAME")->AsString.Trim (), pRecData)->SelectedIndex = 3;
| Немного неуклюжий код — но для примера сойдет. Сдесь я добавляю к узлу Node потомка — для имени которого использую колонку из таблицы БД "lname", и еще записываю ссылку на набор данных которые могут понадобиться при обращении к этому узлу — в данном случае были идентификатор группы и надгруппы.
|
|