powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ListView. Удаление выделенных элементов
12 сообщений из 12, страница 1 из 1
ListView. Удаление выделенных элементов
    #36210581
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго дня !!!

Подскажите как удалить выбранные элементы в ListView ?

По одному делаю так:
Код: plaintext
frmNav.File1.ListItems.Remove frmNav.File1.SelectedItem.Index

Спасибо.
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210739
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да по другому вроде никак, быстрее только Clear, но он все удаляет. Лочь форму перед началом манипуляций, чтобы не было
задержек на прорисовку промежуточных результатов.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210758
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то близко, но ругается ....


Код: plaintext
1.
2.
3.
4.
5.
For i =  1  To frmNav.File1.ListItems.Count
If frmNav.File1.ListItems.Item(i).Selected = True Then
MsgBox frmNav.File1.ListItems.Item(i).Text
frmNav.File1.ListItems.Remove (i) 
End If
Next i

???
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210761
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что удалять нужно с конца.

Jah loves you.
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210791
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Непонятно, проскакивает через один элемент, как будто включен Step 2

И ошбка Index out of bounds
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210814
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понял ... Он один индекс удаляет и естественно и значение следующего индекса уже не то
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210824
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эх, недогада…

При удалении происходит переиндексация элементов. Когда удаляешь первый элемент, второй становится первым, а на второй итерации цикла удаляется тот, который был третьим. В итоге остяется меньше элементов, чем было на начало цикла и вылетает ошибка при обращении к уже несуществующему индексу.

Jah loves you.
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210908
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
dim cur as long
cur= 1 
L_:
For i = cur To frmNav.File1.ListItems.Count
   If frmNav.File1.ListItems.Item(i).Selected = True Then
      frmNav.File1.ListItems.Remove (i) 
   End If
   car=i
   goto L_
Next i
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36210933
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде да, только так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Dim cur As Long
cur =  1 
L_:
For i = cur To frmNav.File1.ListItems.Count
   If frmNav.File1.ListItems.Item(i).Selected = True Then
      MsgBox frmNav.File1.ListItems.Item(i).Text
      frmNav.File1.ListItems.Remove (i)
      Else
      Exit For
   End If
   car = i
   GoTo L_
Next i

Спасибо !!!
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36211123
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нда, блондинки от программирования.
Код: plaintext
1.
2.
For i = frmNav.File1.ListItems.Count To  1  Step - 1 
    If frmNav.File1.ListItems.Item(i).Selected = True Then frmNav.File1.ListItems.Remove (i) 
Next i
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36211143
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c GOTO сильно выступил ;)
...
Рейтинг: 0 / 0
ListView. Удаление выделенных элементов
    #36211153
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Согласен ,,,

Спасибо.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ListView. Удаление выделенных элементов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]