Lesson 26    |  Home  | Lesson 28 

VB2010 Lesson 27: Using Timer

 

In this lesson, we shall show you how to use timer in VB2010. Timer is used to control and manage events that are time related. For example, you need timer to create a clock, a stop watch, a dice, animation and more.

27.1 Creating a Clock

In order to create a clock, you need to use the Timer control that comes with Visual Basic 2010 Express. The Timer control is a control object that is only used by the developer, it is invisible during runtime and it does not allow the user to interact with it.

To create the clock, first of all start a new project in Visual Basic 2010 Express and select a new Windows Application. You can give the project any name you wish, but we will name it MyClock. Change the caption of the Form1 to MyClock in the properties window. Now add the Timer control to the form by dragging it from the ToolBox. Next, insert a label control into the form. Change the Font size of the label to 14 or any size you wish, and set the Font alignment to be middle center. Before we forget, you shall also set the Interval property of the Timer control to 1000, which reflects a one second interval(1 unit is 1 millisecond).

 Now, you are ready for the coding. Actually you would be surprise that what you need to create a cock is only a one-line code, that is:

Label1.Text = TimeOfDay

To actually create the clock, click on the Timer control and insert the code above ,as shown below:

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

Label1.Text = TimeOfDay

End Sub

 

The Clock  is shown below:

 

27.2 Creating a Stopwatch

We can create a simple stopwatch using the Timer control. Start a new project and name it stopwatch. Change the Form1 caption to Stopwatch. Insert the Timer control into the form and set its interval to 1000 which is equal to one second. Also set the timer Enabled property to False so that it will not start ticking when the program is started. Insert three command buttons and change their names to StartBtn, StopBtn and ResetBtn respectively. Change their text to "Start", "Stop" and "Reset" accordingly. Now,key in the code as follows:

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

'To increase one unit per second

Label1.Text = Val(Label1.Text) + 1

End Sub

 

Private Sub StopBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StopBtn.Click

'To stop the Timer

Timer1.Enabled = False

End Sub

Private Sub StartBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StartBtn.Click

'To start the Timer

Timer1.Enabled = True

End Sub

Private Sub ResetBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ResetBtn.Click

'To reset the Timer to 0

Label1.Text = 0

End Sub

The Interface of the Stopwatch

 

27.3 Creating a Digital Dice

We can create a digital dice easily using the Timer Control. To create a dice, you need to generate random numbers using the Rnd function. Rnd generates numbers between 0 and 1. The statement

n = Int(1 + Rnd() * 6)

generates integers from 1 to 6 randomly.

In the code, we introduce the variable m to control the length of time of the rolling process. If m is more than 1000, then the rolling process will stop by setting the timer enabled property to False.

The compete is shown below:

 

Public Class Form1

Dim n, m As Integer

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

m = m + 10

If m < 1000 Then

n = Int(1 + Rnd() * 6)

LblDice.Text = n

Else

Timer1.Enabled = False

m = 0

End If

End Sub

Private Sub RollDiceBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RollDiceBtn.Click

Timer1.Enabled = True

End Sub

End Class

Running the program  produces a dice with fast changing numbers which stop at a certain number. The interface is shown below:

 

 

 

 

 Bookmark and Share

Copyright  2010  Dr.Liew Voon Kiong . All rights reserved |Contact: vbtutor facebook page [Privacy Policy]

 

 

 

This Web Page Created with PageBreeze Free Website Builder