vb 关于多个复选框的多选问题
这个代码单独选一个复选好使,选择两个就会只显示Check2(当Check1画勾时,出一组数据(下面的代码可以),Check2画勾时出一组数据(下面的也可以)但当Check...
这个代码单独选一个复选好使,选择两个就会只显示Check2(当Check1画勾时,出一组数据(下面的代码可以),Check2画勾时出一组数据(下面的也可以)但当Check2和Check1,同时画勾时,就完了只出Check2的数据了,)怎么改能变成当Check1和Check2同时画勾,即输出Check1的也输出Check2的并在list显示,而且,单选也好使呢
Private Sub Command20_Click()
Dim i&, j&, m&, tn&(2), ts$(2), n() As Byte
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
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
一楼的不行啊,这样很麻烦的,我这样判断的有100多呢
tn(0) = 3
tn(1) = 0
tn(2) = 0
这个数组表示
ts(0) = "01234" 在这些数里出现3个
ts(1) = "56789" 出现0个
ts(2) = "" 出现0个
tn(0) = 2 "01234" 在这些数里出现2个
tn(1) = 1 "56789" 出现1个
tn(2) = 0 "" 出现0个 (这个是可以变得)将来ts(2) =被赋值后tn(2)=“”可以为小于3的数,现在这个程序不需要赋值 展开
Private Sub Command20_Click()
Dim i&, j&, m&, tn&(2), ts$(2), n() As Byte
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
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
一楼的不行啊,这样很麻烦的,我这样判断的有100多呢
tn(0) = 3
tn(1) = 0
tn(2) = 0
这个数组表示
ts(0) = "01234" 在这些数里出现3个
ts(1) = "56789" 出现0个
ts(2) = "" 出现0个
tn(0) = 2 "01234" 在这些数里出现2个
tn(1) = 1 "56789" 出现1个
tn(2) = 0 "" 出现0个 (这个是可以变得)将来ts(2) =被赋值后tn(2)=“”可以为小于3的数,现在这个程序不需要赋值 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询