VB控件数组问题
来源:百度知道 编辑:UC知道 时间:2024/06/03 06:54:59
有两个picture控件数组,我想第二个数组picture2的任一控件的图片是picture1的任一控件的图片,但第二个数组的图片不能重复。
如果像下面一样的话,picture2中的空件中有可能出现了相同的图片,要怎么实现每张图片都不相同呢?
Private Sub Form_Load()
Randomize
For i = 0 To 6
Picture1(i) = LoadPicture(App.Path + "\pic\" & i & ".jpg")
Next
For j = 0 To 6
Picture2(j) = LoadPicture(App.Path + "\pic\" & Int(Rnd * 7) & ".jpg")
Next
End Sub
如果像下面一样的话,picture2中的空件中有可能出现了相同的图片,要怎么实现每张图片都不相同呢?
Private Sub Form_Load()
Randomize
For i = 0 To 6
Picture1(i) = LoadPicture(App.Path + "\pic\" & i & ".jpg")
Next
For j = 0 To 6
Picture2(j) = LoadPicture(App.Path + "\pic\" & Int(Rnd * 7) & ".jpg")
Next
End Sub
随即7个0-6的不重复数 不就好了。百度一下 随即不重复数 很多的
这个是产生随机数的,很高效的代码
Option Explicit
Option Base 1
Private Declare Function timeGetTime Lib "winmm.dll" () As Long
Const Nums = 10000
Private Sub Command1_Click()
Dim t As Long
Dim Num(Nums) As Long
Dim i, n As Long
Dim s As String
t = timeGetTime
Randomize
For i = 1 To Nums
n = Int(Rnd * Nums) + 1
If Num(n) = 0 Then
Num(n) = n
s = s & n & ","
Else
i = i - 1
End If
Next i
Text1.Text = s
t = timeGetTime - t
MsgBox t
End Sub