我是vb6.0的新手,最近想寫個樂透49選1的程式來玩
我建了一個CheckBox陣列,按Command Button會將選中的數勾選
並顯示在下面的Label上,部分程式如下:
Private Sub Command1_Click()
Dim ArrayShow(6) As Integer
Dim str1 As String
Dim I, J, K As Integer
I = 0
J = 0
For I = 0 To 48
Check1(I).Value = False
Next I
Randomize
Begin:
Do Until J > 5
K = Int(Rnd * 49 + 1)
If Check1(K).Value = 1 Then
GoTo Begin:
Else
Check1(K).Value = 1
ArrayShow(J) = K
J = J + 1
str1 = str1 & " " & ArrayShow(J)
Loop
lblShow.Caption = str1
End Sub
問題似乎是出在Begin那邊
(不過不太清楚為什麼,是因為vb在跑的時候 會一直在那邊繞嗎?)
請問一下這邊要怎麼修 才能確保取到六個不同的數呢?
(也就是 如果又抽到已經勾選的checkbox的話,就重新抽一次)
另外這行 str1 = str1 & " " & ArrayShow(J)是不是也有問題呀?
因為當我把 Begin的部分都註解起來 嘗試跑看看的時候
勾選的地方都沒有問題(除了有可能會重複)
可是Label欄位顯示的卻永遠都是6個零??
問了這麼多問題 真是不好意思
謝謝各位大大的指教 :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.86.153