
Projects By LANGUAGE
Libraries
Articles & seminars
Source Code

|
How to create a countdown timer application using C# and WinForms |
|
|
In this tutorial We will explain how to create a countdown application in C#. For this application I did not declare any additional namespaces. |
|
Steps |
|
|
|
2.For the newly created form, set the FormBorderStyle property to FixedToolWindow: | |
|
3.Add the following controls to the form: |
|
|
|
|
The form should look like this:
|
|
|
|
Now, let's pass to the code. |
|
|
1. Declare the main variables:
|
|
|
| |
|
public int seconds; public int minutes; public int hours; public bool paused; |
|
2.The code for the starting button: |
|
|
|
|
|
private void button2_Click(object sender, EventArgs e) { if (paused != true) { if ((textBox1.Text != "")&&(textBox2.Text != "") &&(textBox3.Text != "")) { timer1.Enabled = true; button1.Enabled = true; button2.Enabled = false; button3.Enabled = true; nabled = false; textBox3.Enabled = false; textBox4.Enabled = false; try { minutes = System.Convert.ToInt32(textBox2.Text); seconds = System.Convert.ToInt32(textBox3.Text); hours = System.Convert.ToInt32(textBox1.Text); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else { MessageBox.Show("Incomplete settings!"); } } else { timer1.Enabled = true; paused = false; button2.Enabled = false; button1.Enabled = true; } } |
|
|
3.The code for the pausing button: |
|
|
private void button1_Click(object sender, EventArgs e)
{ paused = false; timer1.Enabled = false; button1.Enabled = false; button3.Enabled = false; button2.Enabled = true; textBox4.Clear(); textBox3.Clear(); textBox2.Clear(); textBox1.Clear(); textBox1.Enabled = true; textBox4.Enabled = true; textBox3.Enabled = true; textBox2.Enabled = true; textBox1.Enabled = true; lblHr.Text = "00"; lblMin.Text = "00"; lblSec.Text = "00"; } | |
|
5.The code for the stopping button: |
|
|
private void button3_Click(object sender, EventArgs e)
{ // Stop the timer. paused = false; timer1.Enabled = false; button1.Enabled = false; button3.Enabled = false; button2.Enabled = true; textBox4.Clear(); textBox3.Clear(); textBox2.Clear(); textBox1.Clear(); textBox1.Enabled = true; textBox4.Enabled = true; textBox3.Enabled = true; textBox2.Enabled = true; textBox1.Enabled = true; lblHr.Text = "00"; lblMin.Text = "00"; lblSec.Text = "00"; } |
|
5.The code for the timer: |
|
|
private void timer1_Tick(object sender, EventArgs e) { // Verify if the time didn't pass. if ((minutes == 0) && (hours == 0) && (seconds == 0)) { // If the time is over, clear all settings and fields. // Also, show the message, notifying that the time is over. timer1.Enabled = false; MessageBox.Show(textBox4.Text); button1.Enabled = false; button3.Enabled = false; button2.Enabled = true; textBox4.Clear(); textBox3.Clear(); textBox2.Clear(); textBox1.Enabled = true; textBox4.Enabled = true; textBox3.Enabled = true; textBox2.Enabled = true; textBox1.Enabled = true; lblHr.Text = "00"; lblMin.Text = "00"; lblSec.Text = "00"; } else { // Else continue counting. if (seconds < 1) { seconds = 59; if (minutes == 0) { minutes = 59; if (hours != 0) hours -= 1; } else { minutes -= 1; } } else seconds -= 1; // Display the current values of hours, minutes and seconds in // the corresponding fields. lblHr.Text = hours.ToString(); lblMin.Text = minutes.ToString(); lblSec.Text = seconds.ToString(); } } |
|
|
Now,the controls are set up and the code is ready.You can now run the application and check its functionality.Note,that the values that the user sets as seconds,minutes and hours must be integers. |