vb中将list里面的选中项移除的时候的问题
IfList1.SelCount=1ThenList1.RemoveItemList1.ListIndexElseIfList1.ListCount>1ThenFori=...
If List1.SelCount = 1 Then
List1.RemoveItem List1.ListIndex
Else
If List1.ListCount > 1 Then
For i = 0 To List1.ListCount
If List1.Selected(i) Then
List1.RemoveItem i
End If
Next
End If
End If
中间第一个 if语句 有什么用 ?不要为什么不行? 展开
List1.RemoveItem List1.ListIndex
Else
If List1.ListCount > 1 Then
For i = 0 To List1.ListCount
If List1.Selected(i) Then
List1.RemoveItem i
End If
Next
End If
End If
中间第一个 if语句 有什么用 ?不要为什么不行? 展开
2个回答
展开全部
这一段是说,如果List1中的选中项只有一个,直接移除,如果有多个选中项,则逐一移除(貌似程序有错)。其实可以合并起来处理的:
i = 0
Do While i < List1.ListCount
If List1.Selected(i) Then
List1.RemoveItem i
Else
i = i + 1
End If
Loop
这样不管选中项有多少个,不管List1是否为空,也不管List1的方式是单选、复选还是带复选框,通杀!
i = 0
Do While i < List1.ListCount
If List1.Selected(i) Then
List1.RemoveItem i
Else
i = i + 1
End If
Loop
这样不管选中项有多少个,不管List1是否为空,也不管List1的方式是单选、复选还是带复选框,通杀!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询