Я уже писал(а):Что ты имеешь в виду под "ключевой элемент добавлять во второй столбец" ?
Лексей писал(а):Кстати, какое событие соответствует постановке галочки на чекбоксе (отлично от простого выбора строки)?
И еще, как узнать есть ли галка в чекбоксе некоторых строк?
Private Sub ListView1_ItemCheck(ByVal Item As MSComctlLib.ListItem)
If Item.Checked = True Then
MsgBox "Галочка на" & Item.Index & "-м элементе поставлена"
Else: MsgBox "Галочка с" & Item.Index & "-го элемента снята"
End If
End Sub
Лексей писал(а):index - это что именно (т.е. какое значение в нем содержится)?
Лексей писал(а):И как узнать у каких элементов стоит галка в чекбоксе если у списка стоит мультиселект?
Private Sub Command1_Click()
Dim ittem As ListItem
For Each ittem In ListView1.ListItems
' перебираем все ListItem в ListView1
With ittem
If .Checked Then .SubItems(1) = "Да" Else .SubItems(1) = "Нет"
'если он помечен "галкой" - записываем в соотв.столбец
If .Selected Then .SubItems(2) = "Да" Else: .SubItems(2) = "Нет"
'если он выделен - записываем "да" в соотв.столбец
End With
Next
End Sub
Private Sub Form_Load()
With ListView1
'подготовка ListView1
.MultiSelect = True
.Checkboxes = True
.View = lvwReport
.FullRowSelect = True
.HideSelection = False
'Создание "шапки"
With .ColumnHeaders
.Clear
.Add.Text = "Index"
.Add.Text = "Check"
.Add.Text = "Select"
End With
'Создание элементов
For i = 1 To 10
With .ListItems.Add
.Text = .Index
End With
Next
End With
End Sub
Лексей писал(а):4. И еще не дошло - как при добавлении строк в список, ключевой элемент добавлять во второй столбец, ну а остальные в 1, в 3 и т.д.?
Dim lst As ListItem
Set lst = lw.ListItems.Add(Text:="не ключевое значение")
lst.SubItems(1) = "ключевое значение"
lst.SubItems(2) = "не ключевое значение" ... и т. д.
Лексей писал(а):index - это что именно (т.е. какое значение в нем содержится)?
И как узнать у каких элементов стоит галка в чекбоксе если у списка стоит мультиселект?
for i=1 to ListView.ListItems.Count
If ListView.ListItems.Item(i).Checked = True Then
'отмечено
else
'не отмечено
end if
next i
Bethy писал(а):Узнать где стоит галка вне зависимости от значения свойства мультиселект:
- Код: Выделить всё
for i=1 to ListView.ListItems.Count
If ListView.ListItems.Item(i).Checked = True Then
'отмечено
else
'не отмечено
end if
next i
Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 5