注册 登录
编程论坛 VB6论坛

list 判断删除

z8571127 发布于 2015-02-11 00:01, 492 次点击
Private Sub Command1_Click()

For i = 0 To List1.ListCount - 1

If InStr(List1.List(i), "错") Then
List1.RemoveItem i + 1
Else
If InStr(List1.List(List1.ListCount - 1), "错") Then
End If
End If

Next

End Sub

运行提示错误,该怎么样修改???

Private Sub Form_Load()

List1.AddItem "对"
List1.AddItem "对"
List1.AddItem "错"
List1.AddItem "对"
List1.AddItem "对"
List1.AddItem "错"
List1.AddItem "对"
List1.AddItem "对"
List1.AddItem "错"
List1.AddItem "对"
List1.AddItem "对"
List1.AddItem "对"
List1.AddItem "错"
List1.AddItem "对"
List1.AddItem "对"
List1.AddItem "错"
End Sub




找到方法了。。。


Private Sub Command1_Click()
 
For i = 0 To List1.ListCount - 1
 
If InStr(List1.List(i), "错") And i < List1.ListCount - 1 Then
List1.RemoveItem i + 1
End If

Next
 
End Sub

搞定。。。呵呵


[ 本帖最后由 z8571127 于 2015-2-11 22:24 编辑 ]
4 回复
#2
wp2319572015-02-11 08:23
应该是这样:

  List1.Items.Add("对")
        List1.Items.Add("对")
        List1.Items.Add("错")
        List1.Items.Add("对")
        List1.Items.Add("对")
        List1.Items.Add("错")
        List1.Items.Add("对")
        List1.Items.Add("对")
        List1.Items.Add("错")
        List1.Items.Add("对")
        List1.Items.Add("对")
        List1.Items.Add("对")
        List1.Items.Add("错")
        List1.Items.Add("对")
        List1.Items.Add("对")
        List1.Items.Add("错")

但是我没弄明白 你弄这些对错有啥用  一组不就够用了吗
#3
z85711272015-02-11 14:03
程序代码:
Private Sub Command1_Click()

For i = 0 To List1.ListCount - 1

If InStr(List1.List(i), "") Then

 List1.RemoveItem i + 1

 Else

 If InStr(List1.List(List1.ListCount - 1), "") Then

 End If

 End If

Next

End Sub
我只是想把LIST1 中 含有“错”的下一行删除, 如果最后一行含有“错”,则不删除。
是command1里的代码怎么样写。
#4
风吹过b2015-02-12 11:42
这个代码有问题。
你测试看看,会报下标越界。

list控件按条件删元素,应该是从下向上遍类,而不是从上到下遍类。
#5
z85711272015-02-12 14:48
以下是引用风吹过b在2015-2-12 11:42:05的发言:

这个代码有问题。
你测试看看,会报下标越界。
 
list控件按条件删元素,应该是从下向上遍类,而不是从上到下遍类。

测试通过,没有出现错误。有红色的条件,下标就不会越界了。

Private Sub Command1_Click()

 For i = 0 To List1.ListCount - 1

 If InStr(List1.List(i), "错") And i < List1.ListCount - 1 Then
 List1.RemoveItem i + 1
 End If
 
Next

 End Sub
 
搞定。。。哈哈

[ 本帖最后由 z8571127 于 2015-2-12 14:53 编辑 ]
1