ALLAH (cc)'IN EN GÃœZEL Ä°SÄ°MLERÄ° (ESMA-ÃœL HÃœSNA)
el - HALÃŽM

Cezada, acele etmeyen, yumuÅŸak davranan.

     ANASAYFA    |   Ben Kimim?      Ä°nsanların hesaba çekilmeleri yaklaÅŸtı. Halbuki onlar gaflet içinde yüz çevirmekteler. - Enbiya-1

C Sharpta Timer ile Kronometre Yapımı

C Sharpta Timer ile Kronometre Yapımı
 + Yazıyı Büyüt    - Yazıyı Küçült           

Bu dersimde timer ile örnek uygulama anlatacağım. Timer nesnesini kullanarak kronometre yapacağız. Basit bir örnek olacak inÅŸallah.

Timer nesnesinin kullanımı ile ilgili bilginiz yoksa ya da bilgi tazelemek isterseniz C Sharp Timer Nesnesi Özellikleri ve Kullanımı dersini okuyabilirsiniz.

1.Adım: Öncelikle projemizi açalım ve form üzerine 1 adet label, 1 adet timer ile 3 adet buton ekleyelim. Sonra aÅŸağıdaki ayarları yapalım:

  • Labelin textini 0 (sıfır) yapalım ve fontunu büyütelim ki saniye sayımı güzel görünsün.
  • EklediÄŸimiz 3 butonunda textini BaÅŸlat, Durdur ve Sıfırla yapalım.
  • EklediÄŸimiz timera tıklayarak özellikler penceresinden interval deÄŸerini 1000 (1 saniye) yapalım ve enabled deÄŸeri false olsun.

Başlat butonuna tıklayınca timer sayımını başlatacağız. Durdur butonuna basınca timerı durduracağız. Sıfırla butonuna basınca timerı durdurup labelin textini 0 (sıfır) yapacağız.

Evet eklediğimiz nesnelerin ayarlarını yaptıktan sonra gelelim kodlamayı yapmaya:

2.Adım: Ä°lk olarak baÅŸlat butonuna çift tıklayarak butonun kodunu aÅŸağıdaki gibi yazalım:

        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }

Burada timer1 nesnesini başlattık.

3.Adım: Durdur butonuna çift tıklayarak kodunu aÅŸağıdaki gibi yazalım:

        private void button2_Click(object sender, EventArgs e)
        {
            timer1.Enabled = false;
        }

Burada da timer 1 nesnesini durdurduk.

4.Adım: Sıfırla butonuna çift tıklayarak kodunu aÅŸağıdaki gibi yazalım:

        private void button3_Click(object sender, EventArgs e)
        {
            timer1.Enabled = false;
            label1.Text = "0";

        }

Burada da timer1 nesnesini durdurup label1 nesnesinin yazısını sıfır yaptık.

5.Adım: Åžimdi ise timer1 nesnesine çift tıklayarak tick fonksiyonunu aÅŸağıdaki gibi yazalım.

        private void timer1_Tick(object sender, EventArgs e)
        {
            int sayi = Convert.ToInt32(label1.Text);
            sayi++;
            label1.Text = sayi.ToString();
        }

Burada da labelin yazısını integere çevirerek sayi deÄŸiÅŸkenine alıyoruz ve bunu 1 arttırıp tekrar label1’in textine yazıyoruz. Bu ÅŸekilde her 1 saniyede (intervale 1 saniye vermiÅŸtik) bu iÅŸlemi yapmış oluyoruz.

Programı çalıştırdığımızda sorunsuz çalıştığını görebiliriz. Dersle ilgili soru ve önerilerinizi aÅŸağıdaki yorum ekle kısmından yazabilirsiniz.

Ä°lerleyen günlerde tekrar görüÅŸmek üzere. SaÄŸlıcakla kalınız…

Mustafa KARSLI     Kaynak: www.mustafakarsli.com

( 19875 ) kez okundu     -     28.11.2013    Tweetle     
C Sharpta Timer ile Kronometre Yapımı, kronometre, c#, csharp, c sharp, c sharp timer, timer nesnesi, timer kullanımı, timer, timer1.tick, timer1.interval, kronometre yapımı, kronometre nasıl yapılır, kronometre kodu, timer ile kronometre
Ziyaretçi Yorumları
( 5 ) Yorum
Tümünü Göster
Misafir - TekirdaÄŸ - 12.02.2020 19.09
     Hocam paylaşımlar için elinize saÄŸlık

Volkan - Ä°stanbul - 30.05.2014 02.50
     Kusura bakmayın gerçek zamanı böyle alamazsınız. Bilgisayarda o an çalışan baÅŸka bir uygulamaların yoÄŸunluÄŸundan dolayı zamanda sapmalar olur. Ayrıca timer ların tick olayı her zaman istenilen zaman aralığında olmaz her zaman içinde iÅŸlenen kod kadar uzar. her saniyede birkaç milisaniye geri kalır. Gerçek bir kronometre böyle yapılır: forma 1 button ve 1 label ekleyin. button un Click eventi button1_Click olacak ÅŸekilde ayarlayın. private void button1_Click(object sender, EventArgs e) { if (button1.Text == "Dur") { button1.Text = "BaÅŸla"; if (_tmr != null) _tmr.Stop(); label1.Text = "00:00"; } else { button1.Text = "Dur"; //ÅŸu anki zamanı al ve global e at. DateTime _dt = DateTime.Now; TimeSpan _ts = new TimeSpan(_dt.Hour, _dt.Minute, _dt.Second); _tss = Convert.ToInt32(_ts.TotalSeconds); //BaÅŸlangıç zamanını 00:00 olarak ayarla. _gts = new DateTime(1, 1, 1, 0, 0, 0); //10 milisaniyede 1 kontrol edecek ÅŸekilde Timer ı baÅŸlat. _tmr = new Timer(); _tmr.Interval = 10; _tmr.Tick += new EventHandler(_tmr_Tick); _tmr.Enabled = true; } } Timer _tmr { get; set; } Int32 _tss { get; set; } DateTime _gts { get; set; } void _tmr_Tick(object sender, EventArgs e) { //Åžuanki zamanı al. DateTime _indt = DateTime.Now; TimeSpan _ints = new TimeSpan(_indt.Hour, _indt.Minute, _indt.Second); Int32 _intss = Convert.ToInt32(_ints.TotalSeconds); //Bir önceki zamandan çıkarıp aradaki farkı bul.(kaç saniye geçmiÅŸ) Int32 _fark = _intss - _tss; if(_fark > 0) { //geçen saniye kadar zamanı globaldeki baÅŸlangıç zamanına ekle ve göster. label1.Text = _gts.AddSeconds(_fark).ToString("mm:ss"); } }

öZGÜR - ANKARA - 18.04.2014 14.28
     hOCAM ÇOK YARARLI BÄ°LGÄ°LER YAYINLIYORSUNUZ DAHA YENÄ° SÄ°ZÄ°N SÄ°TESÄ°ZDEKÄ° ÖRNEKLERÄ° Ä°NCELEMEYE BAÅžLADIM ÇOK MEMNUN OLDUM DEVAM EDÄ°CEM EMEGÄ°NÄ°ZE SAGLIK TEÅžEKKÃœR EDERÄ°Z.

esmanur - istanbul - 08.04.2014 19.13
     hocam benim bir ödevim var yardımcı olursanız çok memnun olurum button olmadan accessle formu boyutunu deÄŸiÅŸtirmem lazım ama her deÄŸiÅŸimde acessde güncellenerek kaydolması lazım bana sadece kodlar lazım

fehmihasan - rize - 01.04.2014 11.01
     Hocam bu saÄŸlıklı bilgiler için teÅŸekkür ederim . EmeÄŸinize saÄŸlık

Yorum Ekle
Güvenliğiniz için iP adresiniz kaydedilmektedir. Herhangi bir Hukuki Dava ile karşılaşmamak için hakaret içeren sözler ve argo kelimeler kullanmayınız.
Ä°sim
:
Yorum
:
En fazla 400 karakter
Åžehir
:
E-Posta
:
E-Posta adresi Yayınlanmaz
(Güvenliğiniz için ip adresiniz (18.97.9.168) kaydedilecektir)
  Yeni Dersleri Takip etmek istiyorum. Adresime E-Posta Gelmesini Onaylıyorum.
BENZER YAZILAR
Android
Arduino
Bilgisayar Ağları
biliMKurdu
BiliÅŸim Teknolojileri
C Sharp
Çalışmalar
Donanım
Evde Deney
Fireworks
Flash - Action Script 3
Gezdik ve Gördük
HTML
JavaScript
KiÅŸisel GeliÅŸim
Okul Öncesi Etkinlik
PHP
Projeler
Raspberry Pi
Scratch
Silverlight
Şanlı Tarihimiz
Yarışmalar
Yazılarım
  Zamanlanmış Duyuru/Ödev Bulunmamaktadır...  
Ä°nsanlara merhamet etmeyene Allah da merhamet etmez.

Hz.Muhammed (sav)
Sosyal Medya Hesabım Bulunmamaktadır. Bu nedenle başka platformlarda paylaşımım bulunmamaktadır.
Kişisel resim ve yazıları kullanmak yasaktır. Bunun dışındaki dersleri İsim ve Kaynak göstermek şartıyla kullanmak serbesttir.
 Aktif ziyaretçi : 2
 Bugün : 118
 Toplam : 2729328
Mustafa KARSLI - BiliÅŸim Teknolojileri Öğretmeni © 2008 - 2024  
Site Haritası

 

2