![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Есть дерево:
- Ветка1 Запись1 - Ветка2 Запись2 -Ветка3 Запись1 Нужно удалить все записи с именем "Запись1"... Делаю так: Код:
var nd : TTreeNode; begin nd := TreeView1.Items[0]; while nd <> nil do begin if nd.Text = 'Запись1' then nd.Delete; nd := nd.GetNext; end; end; Последний раз редактировалось mmonster, 18.11.2011 в 20:43. |
#2
|
|||
|
|||
![]() Код:
for I := TreeView1.Items.Count-1 DownTo 0 Do if TreeView1.Items[i].Text = 'Запись1' Then TreeView1.Items.Delete(I); |
#3
|
|||
|
|||
![]() Цитата:
Код:
var nd : TTreeNode; I : Integer begin I := TreeView1.Items.Count-1; while I >= 0 Do begin nd := TreeView1.Items[i]; if nd.Text = 'Запись1' then nd.Delete else Dec(I); end; end; |
#4
|
||||
|
||||
![]() Ты бы код проверил, свой и lmikle, перед тем как фигню писать...
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#5
|
||||
|
||||
![]() Наверно имеется в виду последняя строчка
Код:
Then TreeView1.Items.Delete(I); Код:
Then TreeView1.Items[i].Delete; А вот зачем заменять конструкцию for..downto..do на while совершенно не понятно. Google в помощь Последний раз редактировалось Ildar-tsr, 21.11.2011 в 11:48. |
#6
|
||||
|
||||
![]() Да, действительно, для Delete надо передавать нод, либо использовать метод Node.Delete. Но вот замена на while СОВСЕМ непонятна.
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |