VB:做一个抽奖机(七个数的)。
要求:1七个数的区间为1~33,2七个数互不重复,3数字需滚(timer事件)。
追问:那个“滚~”打字时可能没注意到,是“滚动”,谢谢,莫理解错了没什么可追问的,就是还不会玩,解释一下~~~
要求:1七个数的区间为1~33,2七个数互不重复,3数字需滚(timer事件)。
追问:那个“滚~”打字时可能没注意到,是“滚动”,谢谢,莫理解错了没什么可追问的,就是还不会玩,解释一下~~~
答案:呵呵,想随机双色球?我很早就做过了。你在窗体添加一个文本框Text1,添加一个命令按钮command1,添加一个时钟timer1,代码如下:
Option Explicit
Private Sub Command1_Click()
If Timer1.Enabled = False Then
Timer1.Enabled = True
Command1.Caption = "停止"
Else
Timer1.Enabled = False
Command1.Caption = "开始"
End If
End SubPrivate Sub Form_Load()
Command1.Caption = "开始"
Timer1.Enabled = False
Timer1.Interval = 100
End SubPrivate Sub Timer1_Timer()
Dim tmpNum(7) As Integer
Dim i As Integer, j As Integer
Text1 = ""
Randomize '初始化随机数种子
For i = 0 To 6
ReGet:
tmpNum(i) = Int(Rnd() * 32) + 1
If i > 0 Then
For j = 1 To i
'数字重复则从新得到
If tmpNum(i) = tmpNum(j - 1) Then GoTo ReGet:
Next
End If
DoEvents
Next
'排序
For i = 0 To 6
For j = 0 To 5
If tmpNum(j) > tmpNum(j + 1) Then
tmpNum(7) = tmpNum(j)
tmpNum(j) = tmpNum(j + 1)
tmpNum(j + 1) = tmpNum(7)
End If
DoEvents
Next
DoEvents
Next
For i = 0 To 6
Text1 = Text1 & tmpNum(i) & ","
Next
Text1 = Left(Text1, Len(Text1) - 1)
End Sub
timer事件里写
Label1.caption=int(rnd()*32)+1 //产生1~33随机数在标签控件显示
这样数字就滚了
不重复只要在产生随机数的时候做DO判断就可以了
滚的联想……1。脏字...2。转圈...3。不停闪...
你是要第二种还是第三种?