vb 太难了,所有vb论坛都没解决,都半个月了,再次请教

来源:百度知道 编辑:UC知道 时间:2024/05/21 17:11:59
Private Sub Command20_Click()

Dim i&, j&, m&, ts$(2), n() As Byte
Dim tn(2) As String

ts(0) = "01234"
ts(1) = "56789"
ts(2) = ""

For i = List1.ListCount - 1 To 0 Step -1
If Form3.Check1.Value = 1 Then
tn(0) = 3
tn(1) = 0
tn(2) = 0

End If
If Form3.Check2.Value = 1 Then
tn(0) = 2
tn(1) = 1
tn(2) = 0
End If
If Form3.Check3.Value = 1 Then
tn(0) = 0
tn(1) = 3
tn(2) = 0
End If
If Form3.Check4.Value = 1 Then
tn(0) = 1
tn(1) = 2
tn(2) = 0
End If

n = StrConv(List1.List(i), 128)

For j = 0 To 2
For m = 0 To 2
If InStr(ts(m), Chr(n(j))) > 0 Then tn(m) = tn(m) - 1
Next
Next
If tn(0) = 0 And tn(1) = 0 And tn(2) = 0 Then Else List1.RemoveItem i

Next
End Sub
这段代码单独选择Check1-Check4都好使,但它同时多选就完蛋了,大家说再把每个Check做个循环,我觉得只要

不大明白你想要什么样的结果,如果是点击Command后将check选择的加入list列表,这样写就好了
Private Sub Command1_Click()
List1.Clear

If Check1.Value = Checked Then
List1.AddItem Check1.Caption
End If

If Check2.Value = Checked Then
List1.AddItem Check2.Caption
End If

End Sub

不明白啊,如果你有源程序,直接发过来看看比较好。

你把你的源文件给我看看,好吗?我的QQ574429650