Timer, İngilizce bir kelime olsa da günlük hayatta çok fazla duyduğumuz yabancı terimlerden biridir ve Türkçe’de sayaç anlamına gelmektedir. Yine Visual Studio da  sayaç görevini üstlenen sınıfın ( class ) ismi de Timer dır. C# içinde Timer da çok fazla bir özellik olmamasına rağmen mutlak uygulanması gereken bir kaç olayı vardır. Eğer C# form sayfalarında Timer’ın bu özellikleri kod yazılırken belirtilmezse, ilgili uygulama sayfasında sayacımız çalışmaz yada bozuk çalışır.
Sayacımız Visual Studio içinde C# uygulama sayfasına eklendikten sonra, form ekranında aktif olarak gözükmezler. Tasarım kısımın da ise C# formunun altında Timer olarak belirir.(Aşağıdaki resimde olduğu gibi).

c# , c# formu , c# timer aracı
C# Ortamında Timer

Timer’ın Kullanımı
Timer C# da Form ekranına ekledikten sonra, Aşağıda belirteceğim özelliklerin kod ekranında kesinlikle yazılması gerekir.

Timer’ın Olayları ( Event )
C# da Timer sınıfının sadece tek bir tetiklenme türü vardır. O da Tick olayıdır.

Timer Sınıfı Özellikleri
Timer içinde yer alan bütün sınıf (class) türleri aşağıda belirtilmiştir.

Timer.Interval
Sayaç çalışmaya başladığı andan itibaren, belirli bir zaman aralığında Tick eventinin tetiklenme olayının gerçekleşmesi gerekir. Bunun için Timer’ın Interval değerinin kod ekranında belirtilmesi gerekir. Belirtilecek olan Inverter değeri ile aşağıda görüldüğü gibi Tick eventi içinde yer alan kodların ne sıklıkla çalıştırılacağı belirtilir.

private void timer1_Tick(………..)      
{        
  Yazılacak Kodlar

Inverter değeri kesinlikle mili saniye cinsinden yazılmalıdır. Örneğin; 
Interval değeri 2000 olan bir sayaç 2 saniye de bir tetiklenecektir. 

Timer.Start
Sayacı başlatmak için kontrolün Start metodu kullanılmaktadır. 

Timer.Stop
Sayacı durdurmak için kontrolün Stop metodu kullanılmaktadır.

Timer.Enabled 
Enabled özelliği ile sayacın durumunu aktif veya deaktif olarak belirleyebiliriz. 

Timer Kullanımına Örnek Basit Bir Program

Bu yazılı program ile timer1_Tick olayı çalıştığı andan itibaren, zaman 0 dan başlayarak pozitif yönde sonsuza doğru ilerler.

private int sayi = 0;
public Form1()
InitializeComponent();
      {
      }    
private void Form1_Load(object sender, EventArgs e)      
{        
  label1.Text = Convert.ToString(sayi);
  timer1.Interval = 1000;            
  timer1.Start();                    
}    
  private void timer1_Tick(object sender, EventArgs e)      
{        
   sayi = sayi + 1;                  
   label1.Text = Convert.ToString(sayi);
}

Ayrıca Timer konusuna örnek olarak başka bir sayfa da göstermiş olduğum sistem saati uygulamasına da bakabilirsiniz.
Sistem Saati İle Saat Uygulaması

Bu yazıyı C# ile programlama işine yeni girmiş ve pek bir şey bilmeyen arkadaşlarıma da faydası olabilmesi açısından ayrıntısı ile anlatılmıştır. Umarım faydalı bir yazı olmuştur. Görüşlerinizi yorum kısmından bekliyorum…

5 Responses to C# Timer Kullanımı

  1. Javed diyor ki:

    Bu yorum bir blog yöneticisi tarafından silindi.

  2. ayesha diyor ki:

    Bu yorum bir blog yöneticisi tarafından silindi.

  3. Anonymous diyor ki:

    Çok teşekkürler emeğinize sağlık.

  4. Şahin diyor ki:

    Merhaba
    Playstation kafe için masayı süreli aç bölümüne anlık saat örneğin 15:22 iken textboxa 60 yazdıgımda bir saat ilerisini 16:22 başka bir textboxa yazdırabilirmiyiz.
    Teşekkürler.

  5. aaa diyor ki:

    timerı belli bir sayıya ulaşınca durdurabiliyor muyuz?
    Ya da if komutuyla şu sayıya gelirse diye bir koşul yazabiliyor muyuz?

    Timer ile bir alarm yapmak istiyorum ve şu anki saaatten geriye doğru sayan bir sayaç gibi olacak. Süre 00:00:00 olunca alarm çalacak şekilde ayarlamak istiyorum.
    Bu yüzden bu süre sıfırlanınca bunu nasıl okuyabilirim, yardımcı olur musunuz

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir