我正在用VB 2010 express编写一个骰子滚动程序,可以滚动许多不同类型的骰子,每种类型最多15个。我目前有4个选项用于该计划。选择骰子数量,选择骰子上的边数,仅选择最高骰子并选择最低骰子。除了“使用最低模具”代码之外,一切似乎都按预期工作。如果有人能指出我正确的方向或给我一个如何做得更好的例子。在此先感谢您的任何帮助
Dim DiceArray(frmRoller.cmbNumberofdice.Text) As Long
Dim iTemp As Integer
Dim i As Integer
Dim numofDice As Integer
Dim CountArrayHigh(100) As Integer
Dim CountArrayLow(100) As Integer
numofDice = frmRoller.cmbNumberofdice.Text
Select Case frmRoller.cmbChooseDie.Text
Case "D4"
For i = 1 To numofDice
iTemp = D4()
DiceArray(i) = iTemp
If iTemp > CountArrayHigh(0) Then CountArrayHigh(0) = iTemp
If iTemp < CountArrayLow(0) Then CountArrayLow(0) = iTemp
Next i
highDie = CountArrayHigh(0)
lowDie = CountArrayLow(0)
答案 0 :(得分:1)
在VB.NET中,数组基于零。因此,除了不筛选用户的输入之外,声明像Dim DiceArray(frmRoller.cmbNumberofdice.Text) As Long
这样的数组实际上是创建一个比所需大的元素的数组。我们需要更多的代码来确定,但我会说你忘记了零元素。 Long也似乎有点矫枉过正......它可以持有-9,223,372,036,854,775,808到9,223,372,036,854,775,807。