摘要:[Visual Basic 6.0] TQC 企業人才技能認證 Visual Basic 程式設計 - 406 賽馬
[Visual Basic 6.0] TQC 企業人才技能認證 Visual Basic 程式設計 - 406 賽馬
Dim 是否可下注 ' 為了避免 第一場的選項恢復後 影響 chkWin_Click 事件 將原本 扣的錢 再加回去
Private Sub chkWin_Click(Index As Integer) ' 是否打勾的事件
If 是否可下注 = True Then ' 當是可以下注的狀態才可用 否則不影響打勾事件
If chkWin(Index).Value = 0 Then
lblMoney.Caption = lblMoney.Caption + 10: chkWin(Index).Caption = Index + 1
' 不是打勾就把原本打勾扣的錢加回去 Caption 就是 Index + 1 自己研究
Else
lblMoney.Caption = lblMoney.Caption - 10: chkWin(Index).Caption = Index + 1 & "--> 10"
' 是打勾就扣錢 成為賭注的金額 Caption 就是 Index + 1 在加上 --> 10
End If
End If
End Sub
Private Sub cmdStart_Click()
是否可下注 = False ' 為了避免 第一場的選項恢復後 影響 chkWin_Click 事件 將原本 扣的錢 再加回去
' 因為如果沒設一個開關 當 比賽比完後 有做一個 chkWin(J).Value = 0 就是把打勾的勾全部取消 的事件
' 這樣會影響 chkWin_Click(Index As Integer) 事件 沒設開關 他就會當作打勾被取消 又 + 錢 所以要設開關
' 隨機產生勝利的馬匹
勝利產生 = False ' 還沒有勝利的馬
Do Until 勝利產生 ' 直到有勝利的馬後停止
For I = 0 To 3
If imgHorse(I).Left >= 3960 Then ' 勝利條件 某匹馬到達終點 終點題目應該會寫 範例先用 3960
勝利產生 = True ' 有勝利的馬產生
勝利的馬匹編號 = I ' 紀錄勝利的馬匹
Exit For ' 跳離迴圈
Else
' 這匹馬還沒到達終點
' 隨機跑 N 格
imgHorse(I).Left = imgHorse(I).Left + Rnd * 100
End If
Next I
Loop
If chkWin(勝利的馬匹編號).Value = 1 Then ' 當隨機產生勝利的馬的賭注選項有打勾
MsgBox "你贏了!": lblMoney.Caption = lblMoney.Caption + 30 ' 加 30 元
Else
MsgBox "你輸了!" ' 不加錢 不扣錢
End If
' 恢復原始數據
For J = 0 To 3
imgHorse(J).Left = 420 ' 原始位置
chkWin(J).Value = 0 ' 取消打勾
chkWin(J).Caption = J + 1 ' 編號
Next J
是否可下注 = True ' 數據恢復完成 就可以再次下賭注了
End Sub
#0xDe 從分享中學習
#Facebook:ProgrammerDe (https://www.facebook.com/MicrosoftDes) 有問題歡迎提問