2014-01-05 135 views
0

我的目标是让代码在任何地方随机发出1到30秒钟的哔声。这是我的代码到目前为止:在VB中设置随机定时器时间间隔

Public Class Form1 

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick 
    Console.Beep() 
End Sub 

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 
    Timer1.Stop() 
End Sub 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    Timer1.Start() 
End Sub 
End Class 

这会发出哔哔声,每秒钟。现在,我想更改Timer间隔,以便在1到30秒之间随机发出蜂鸣声。也许稍后我会为用户添加选项来定义边界,但现在,1和30是好数字。我只是不知道如何将随机数应用到我的计时器间隔。

回答

0

更改Interval每个Tick

Public Class Form1 
    Private p_oRandom As Random 

    Private Const INTERVAL_MIN_SEC As Integer = 1 
    Private Const INTERVAL_MAX_SEC As Integer = 30 

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    p_oRandom = New Random 
    End Sub 

    Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles _ 
                     Timer1.Tick 
    Console.Beep() 
    Timer1.Interval = p_oRandom.Next(INTERVAL_MIN_SEC, INTERVAL_MAX_SEC) * 1000 
    End Sub 

End Class