C# Timer Nesnesi Kullanımı

  Visual Studio C# Timer nesnesi milisaniye cinsinden geçen süreyi hesaplamak için kullanılabilir. İstediğimiz komutların belirlediğimiz zaman aralığında tekrarlamasını istiyorsak timer kullanabiliriz. Örneğin bilgi yarışması uygulamalarında olduğu gibi 30 saniye sonra diğer soruya geçen projelerde kullanılabilir.

İnterval Özelliği: Timer’ın çalışacağı zaman bölümüdür. Zaman mili saniye cinsindedir. Mesela her 1 saniyede kodları çalıştırmak istersek interval 1000, her 2 saniyede kodları çalıştırmak için interval’i 2000 yapmamız gerekir.

Enabled Özelliği: Değeri true ise timer’ın çalışmasını,false ise durdurulmasını sağlar.Yani enabled değeri true ise timer’ın Tick olayına yazılan kodlar çalışır, false ise çalışmaz.

Tick Olayı : Bu olaya yazılan kodlar interval ile belirlenen zamanda tekrar edilir.

Aşağıdaki kodlar sayesinde form1 de 30 saniye durulmakta ve otomatik olarak form2 ye geçilmektedir.

timer1_Tick olayı timer için belirtilen süre dolduğu zaman gerçekleşen olaydır. Burada yazdığımız 
kodlar ile form2 ye geçmesini sağladık.

Form2 frm2 = new Form2();
frm2.Show();
this.Hide();
}
private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = 30 * 1000;
timer1.Start();
}

Form1 i kapatırken timer1 i de durdurduk. 

private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
timer1.Stop();
}


Yukarıdaki örnekte olduğu gibi bir soru için süre belirleyebilir, ve sürenin sonunda ikinci forma geçebilirsiniz.


public partial class Form1 : Form
{
    public Form1()
    {
    InitializeComponent();
    }
     int a = 10;
     private void timer1_Tick(object sender, EventArgs e)
    {
     a–;
     label1.Text = a.ToString();
     if (a == 0)
     {
      timer1.Enabled = false;
      MessageBox.Show("Süreniz Bitti");
      Form2 f2 = new Form2();
      f2.Show();
      this.Hide();
     }
    }
}