Chia sẻ

Trong bài này, csharpcanban.com sẽ hướng dẫn các bạn sử dụng Điều kiển Timer (Timer Control) để tạo đồng hồ đếm ngược thời gian theo giây.


[C#] Tạo đồng hồ đếm ngược theo giây


Trình tự thực hiện như sau:


Bước 1: Khởi tạo một Project mới


Bước 2: Kéo vào Form1 những Control sau đây: Label1, Button1.


Bước 3. Viết code như sau:

using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private System.Windows.Forms.Timer aTimer;
private int counter = 60;
private void button1_Click(object sender, EventArgs e)
{
aTimer = new System.Windows.Forms.Timer();
aTimer.Tick += new EventHandler(aTimer_Tick);
aTimer.Interval = 1000; // 1 second
aTimer.Start();
label1.Text = counter.ToString();
}
private void aTimer_Tick(object sender, EventArgs e)
{
counter–;
if (counter == 0)
aTimer.Stop();
label1.Text = counter.ToString();
}
}
}

Trong đoạn mã trên, đối tượng aTimer thuộc lớp Timer, được khai báo thông qua câu lệnh

private System.Windows.Forms.Timer aTimer;

Biến counter là số giây cần đếm ngược, khai báo thông qua câu lệnh

private int counter = 60;

Trong sự kiện button1_click ta có mã sau:

aTimer = new System.Windows.Forms.Timer(); //Khởi tạo đối tượng Timer mới
aTimer.Tick += new EventHandler(aTimer_Tick); //Tạo sự kiện aTimer_Tick
aTimer.Interval = 1000; // thời gian ngắt quãng của Timer là 1 giây
aTimer.Start(); //Bắt đầu khởi động Timer
label1.Text = counter.ToString(); //Hiển thị biến counter ra Label1

Trong sự kiện aTimer_Tick

counter–; //Giảm 1 giây
if (counter == 0) //Nếu bằng 0 thì dừng Timer
aTimer.Stop();
label1.Text = counter.ToString(); //Hiển thị biến counter lên label1

Hãy thực hành và viết bình luận phía dưới nhé các bạn.


Chúc các bạn thành công !!!

RSS Thủ thuật & Mẹo vặt

Xem thêm  [C#] Hướng dẫn xử lý ngoại lệ

Chia sẻ

By admin

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *