Timer Countdown

Hey
  I need some help to make a timer that can count down from 2 mins showing each second and also being able to start anywhere in between 2 mins and the end. Thanks
Bart235Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
clifABBConnect With a Mentor Commented:
Place a timer on a form.
Set the Interval property to 1000 (that's 1000 milliseconds or 1 second)
Set the enabled property to False.

Add a text box to the form (a place to put the starting number)
Add a lable to your form (a place to display the count down)
Add a button to your form (to start the count down)

In the declarations section, add the following:
Private m_nCount As Integer

In the button's click event, add the following code:
Private Sub Command1_Click()
  m_nCount = Val(Text1.Text) * 60
  Label1.Caption = m_nCount
  Timer1.Enabled = True
End Sub

In the timer's timer event, place the following code:
Private Sub Timer1_Timer()
  m_nCount = m_nCount - 1
  Label1.Caption = m_nCount
  If m_nCount = 0 Then
    Timer1.Enabled = False
  End If
End Sub
0
 
clifABBCommented:
If you want to be able to type in minutes and seconds (and display it as such, change the buttons click event to this:

Private Sub Command1_Click()
  Dim nPtr As Integer

  nPtr = Instr(Text1.Text, ":")
  If nPtr > 0 Then
    m_nCount = Val(Left$(Text1.Text, nPtr - 1)) * 60 + Val(Mid$(Text1.Text, nPtr + 1))
  Else
    m_nCount = Val(Text1.Text)
    Label1.Caption = Trim$(Str$(m_nCount \ 60)) & ":" & Trim$(Str$(m_nCount Mod 60))
  End If
  Timer1.Enabled = True
End Sub

And change the timer's timer event to this:

Private Sub Timer1_Timer()
  m_nCount = m_nCount - 1
  Label1.Caption = Trim$(Str$(m_nCount \ 60)) & ":" & Trim$(Str$(m_nCount Mod 60))
  If m_nCount = 0 Then
    Timer1.Enabled = False
  End If
End Sub
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.