如何检查项目是否已在vb6中的列表框中

时间:2015-03-28 13:55:09

标签: random vb6 listbox

我正在使用vb6并且我希望生成多个randum号码(来自的范围由用户推断以及生成的答案数量)并将它们发送到列表框 但我不想复制生成的数字所以.. 我想在将生成的号码发送到列表框之前检查它是否已存在于lisbox中。如果它已经存在,那么生成另一个数字,如果它确实然后将它发送到列表框

这是我现在所拥有的 max和min是选择数字的范围 答案是生成的数字数

    Randomize
For i = 1 To answers Step 1
    generated = CInt(Int((max - min + 1) * Rnd() + min))
        For n = 0 To List1.ListCount
            If List1.List(n) <> gen Then
            List1.AddItem (gen)
            Else
            If List1.List = gen Then
            'I don't know what to do from here 
            '(how to go back to generate another number)
        Next n
Next i

提前谢谢你 保持敏捷,我需要保持简单 非常感谢你

1 个答案:

答案 0 :(得分:0)

如果生成的相同值在列表中,则使用布尔值保留结果。

Private Sub AddRandomNumbers()
    Dim blnIfFound As Boolean
    Dim max As Integer
    Dim min As Integer
    Dim answers As Integer
    max = 10
    min = 1
    answers = 5

    Randomize

    Do While List1.ListCount < answers

        generated = CInt(Int((max - min + 1) * Rnd() + min))
        blnIfFound  = False

        For n = 0 To List1.ListCount
            If List1.List(n) = generated Then
                blnIfFound = True
                Exit For
            End If
        Next n

        If blnIfFound = False Then List1.AddItem (generated)

    Loop

End Sub