Tại thấy trong Yahoo Mail có cái listview trong các hộp thư có checkbox đặc biệt nên mới thử làm, nhưng không được như họ!
Như thế này không biết đúng ý chưa?
[GPECODE=vb]Option Explicit
Private Sub UserForm_Initialize()
Dim I As Long
With ListView1
.MultiSelect = True 'Cho phep chon nhieu item va chay CheckItemsWithSelectState trong ListView1_ItemClick
.ColumnHeaders.Add , , "VALUE", .Width - 4
.CheckBoxes = True
For I = 1 To 10
.ListItems.Add , , "Item" & I
Next
End With
End Sub
Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
ColumnHeader.Tag = Not CBool(IIf(ColumnHeader.Tag = "", 0, ColumnHeader.Tag))
CheckItems CBool(ColumnHeader.Tag)
End Sub
Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
If ListView1.MultiSelect Then
CheckItemsWithSelectState
End If
End Sub
Private Function CheckItems(ByVal bCheck As Boolean) As Long
Dim I As Long
For I = 1 To ListView1.ListItems.Count
CheckItems = CheckItems + 1
ListView1.ListItems(I).Checked = bCheck
Next I
End Function
Private Function CheckItemsWithSelectState() As Long
Dim I As Long
For I = 1 To ListView1.ListItems.Count
CheckItemsWithSelectState = CheckItemsWithSelectState + 1
ListView1.ListItems(I).Checked = ListView1.ListItems(I).Selected
Next I
End Function
[/GPECODE]