随机数生成器VB.NET存在问题

时间:2013-06-03 23:35:45

标签: vb.net if-statement enums

我正在构建一个简单的Tic Tac Toe游戏,但我遇到了一个问题。我正在尝试为计算机编写一个脚本,以便在游戏中移动并且卡住了。以下是我遇到问题的代码部分。

Public Class Form1
    Public Enum Buttons As Byte
        btn1 = 1
        btn2 = 2
        btn3 = 3
        btn4 = 4
        btn5 = 5
        btn6 = 6
        btn7 = 7
        btn8 = 8
        btn9 = 9
    End Enum

    Public Sub Computer(ByVal ButtonSelected As Button, ByVal Buttons As Buttons)
        Dim RandomNumberGenerator As New Random
        Dim RandomNumber As Integer
        RandomNumber = RandomNumberGenerator.Next(1, 9)
        If Buttons.RandomNumber Then

        End If


    End Sub

我遇到的问题是If Statment。我想使用随机数从Enum中选择一个按钮,但我不知道如何操作。有人可以帮助我吗?

1 个答案:

答案 0 :(得分:5)

只需使用强制转换将整数转换为枚举。另外一定要初始化Random类对象一次,这样你就不会一遍又一遍地得到同一个按钮。像这样:

Dim RandomNumberGenerator As New Random

Public Sub Computer()
    Dim RandomNumber = RandomNumberGenerator.Next(0, 9)
    Dim RandomButton = CType(RandomNumber, Buttons)
    '' etc..
End Sub