Timer Özellikleri C# Ders 21
Daha fazla bilgi için : www.gorselprogramlama.com
Timer Özellikleri: İstediğimiz komutların belirlediğimiz zaman aralığında tekrarlamasını istiyorsak timer kullanabiliriz.
İ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.
Örnek: Başla ya basınca her 1 saniyede listbox’a www.gorselprogramlama.com yazsın.Dur tıklanınca ekleme işlemi durdurulsun.

[code language=”csharp”]
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Interval = 1000;
}//Daha fazla bilgi için : www.gorselprogramlama.com
private void basla_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}
private void dur_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
}
private void timer1_Tick(object sender, EventArgs e)
{
listBox1.Items.Add("www.gorselprogramlama.com");
}
[/code]


Örnek:Başlaya tıklanınca her saniyede sayı bir bir artırılıp label’e yazılsın.Dur denilince işlem durdurulsun.

[code language=”csharp”]
namespace timer_kullanimi
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int sayac;
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Interval = 1000;
}
private void basla_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}//Daha fazla bilgi için : www.gorselprogramlama.com
private void dur_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
}
private void timer1_Tick(object sender, EventArgs e)
{
sayac++;
label1.Text = sayac.ToString();
}
}
}
[/code]


Örnek: Dijital saat örneği hazırlayalım.

[code language=”csharp”]
namespace timer_kullanimi
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int saat, dakika, saniye;
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Interval = 1000;
}
private void basla_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}
private void dur_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
}
private void timer1_Tick(object sender, EventArgs e)
{
if (saniye <59) saniye++;
else
{
saniye = 0;
if (dakika<59)
{
dakika++;
}
else
{
dakika = 0;
if (saat < 24) saat++;
else saat = 0;
}
}
label1.Text = saat.ToString()+" "+dakika.ToString()+" "+saniye.ToString();
}
}
}//Daha fazla bilgi için : www.gorselprogramlama.com
[/code]




Örnek : Yukarıdaki örneği tek butonla yapalım.

[code language=”csharp”]
namespace timer_kullanimi
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int saat, dakika, saniye;bool durum;
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Interval = 10;
durum = false;
}
private void basla_Click(object sender, EventArgs e)
{
if (durum == false)
{
basla.Text = "Dur";
timer1.Enabled = true;
durum = true;
}
else
{
basla.Text = "Başla";
timer1.Enabled = false;
durum = false;
}
}//Daha fazla bilgi için : www.gorselprogramlama.com
private void timer1_Tick(object sender, EventArgs e)
{
if (saniye <59) saniye++;
else
{
saniye = 0;
if (dakika<59)
{
dakika++;
}
else
{
dakika = 0;
if (saat < 24) saat++;
else saat = 0;
}
}
label1.Text = saat.ToString()+" "+dakika.ToString()+" "+saniye.ToString();
}
}
}
[/code]



Not: timer’ı çalıştırmak için timer.Start , durdurmak içinde timer.Stop komutlarını kullanabilirsiniz.Bununla ilgili yapılmış örnek için Tıklayınız
timer ile yapılmış alarm örneği için Tıklayınız.
timer ile yapılmış araba yarışı örneği Tıklayınız.
timer ile yapılmış süreli çoktan seçmeli test örneği için Tıklayınız.
timer ile yapılmış trafik ışıkları (lambası) örneği için Tıklayınız.
timer ile yapılmış sınavmatik örneği için Tıklayınız. (Tarihi girilen sınavı zamanı geldiğinde uyarı vererek bildiriyor.)
timer ile yapılmış nesneyi hareket ettirme örneği için Tıklayınız.
timer ile yapılmış sayı bulma örneği için Tıklayınız.
timer ile yapılmış puzzle örneği için Tıklayınız.
timer ile yapılmış jetman oyun örneği için Tıklayınız.
timer ile yapılmış oyun örneği için Tıklayınız.
Daha fazla bilgi için : www.gorselprogramlama.com
Dersin videolu anlatımı ve anlatımda yapılan projeyi indirmek için
güzel
bunu kullanacak çok yer var.
teşekkürler
başla, dur butonlarını
bir butona yapabilir miyiz?
önce başla, basınca dur yazacak, tekrar basınca başla
tabiki yapabilirsin.aşağıda kod olarak yazdım.timer1_Tick yine aynı kodlar.
int saat, dakika, saniye;bool durum;
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = false;
timer1.Interval = 10;
durum = false;
}
private void basla_Click(object sender, EventArgs e)
{
if (durum == false)
{
basla.Text = “Dur”;
timer1.Enabled = true;
durum = true;
}
else
{
basla.Text = “Başla”;
timer1.Enabled = false;
durum = false;
}
sağolun.
ama nerde hata yaptım.
1 button
1 texbox
1 timer
1 label mi olcaktı
yine de yapamadım.
yukarıda derse son örnek olarak ekledim.
emeğine sağlık
bende yine hata verdi.
lütfen yardımcı olun nerde hata yaptım.
the name “basla” does not exist in the current context line 33 colomn 17 de hata
the name “basla” does not exist in the current context line 44 colomn 17 de hata
nedendir anlayamadım.
siteyi hep ben meşgul ediyorum.
herkesten çok özür dilerim.
butonun name’ni properties’ten basla yapmalısın.Veya basla.Text yerine button1.Text yaz.Çünkü ilk eklediğin butonun name’i button1’dir.
tek butona iki islev atama cok iyi oldu. tesekkurler.
arkadas kusura bakmayın konu ıle alakası yok ama labele 10 dan 1 e kadar sayıları for dongusu ıle sıralatmak ıstıorum ama yapamıorum .s ugrastıgımda sacede labele tek bır rakam yazdıra bılıorum yardımcı olursanız sevınırım labele su nu yazdırmam gerekıyor 10 9 8 7 6 5 4 3 2 1
örnek yayınlandı link : http://www.gorselprogramlama.com/10dan-1e-kadar-olan-sayilari-yan-yana-labela-yazma-c-net
birinci örnekte butonları hiç kullanmamışsınız butanlara hiç kod vermemişsiniz butonsuz nasıl çalıştıracağız
merhaba ben form uygulaması yapıyorum da formda şöyle bir de kod bulunmasını istiyorum .
her bir saat içerisinde eger yapılacak iş girilmez ise uyarı verecek yapılacak iş girlir ise girildikten sonra yine başa sarıp aynı şey devam edecek uygulama kapanana kadar bu böyle gidecek yardımcı olabilen var çok iyi olur valla şimdiden teşekkürler
metin :
Aşağıdaki linki incele.
http://www.gorselprogramlama.com/sinavmatik-c-net/
Mrb ben şunu karıştırıyorum
Mesela 2 saniyede 1 çalışması 2000 ise
5 kere çalışması kaç oluyo mesela sınavda çıktı
5 kez çalışması vardı cevap 200 dü anlamadım
Cevaplarsanız çok memnun olurum
egmyo :
intervalin 1000 olarak ayarlaması timer’ın tick olayına yazılan kodların her 1 saniyede çalışacağı anlamına geliyor.Eğer siz bunu kod yardımıyla durdurmazsanız sürekli çalışır.Kaç kere olayını tick olayına sayaç eklemeyle olur.Tick içindeki sayacı (a değişkeni olsun) bir bir artırırsan sayac 5 olunca Timer1.Stop() dersin ve 5 kere çalışınca timer durur.
İyi Çalışmalar..
Benim Farklı bir sorum var.
Formda 3 adet timer kullanıyorum, 3.timer tick olayını yapmadan 2 saniye önce 1 ile 2. timeri durdurmak istiyorum ve timer 3 görevini yaptıktan sonra 1 ile 2 timerin tekrar devreye girmesini istiyorum.
Natlus:
Bütün timerlerın intervalini 1000 yapmalısın.
Timerlar içinde değişken tanımlayarak bir bir artırarak (sayaç 1 artınca 1 sn geçiyor) gerekli sayc değerinde if komutunu kullanarak timer ın stop ve start metotlarını kullanabilirsin.
peki hocam tüm intervaller 1000 olduğunda ilk startla 3 çalışmaz mı?
Natlus :
Başlangıç olarak stop olarak ayarlarsın.ister kod ister propertiesle
Ben Tımer Kullanarak belirlenen süre dahilinde yazı yazsın o süreen sonra durması için ne yapbilirim
Sadık Sefa :
Timer Tick olayına kod yazmanız gerekir.
Mesela label yazı yazmak için
Label1.Text=”Merhaba”;
Timer ları çalıştırmak için Timer1.Play();
Timer ları durdurmak için Timer1.Stop();
if kullanarak veya sayaç kullanarak bu yazım işlemini istediğin kadar yapabilirsin.
Timer ve if li örnekler için aşağıdaki linkleri incele.
http://www.gorselprogramlama.com/10-dk-ve-5-dk-secenekli-kronometre-csharp/
http://www.gorselprogramlama.com/buton-tiklaninca-100den-geriye-dogru-say-ama-sayi-45-olunca-tekrar-buton-tikla-csharp/
Is takik otomasyonu yapiyorum hocam acces tablosunda iscinin is bitis tarih gelince kirmizi olarak gostermeli veya uyari mesaj vermeli sşu tc no kisi is bitisi diye kodunu hic bir yerde bulamadim yardimci olun
melisa :
Aşağıdaki linki incele.
http://www.gorselprogramlama.com/iki-tarih-arasindaki-farka-gore-datagridview-satirini-renklendir-csharp/
Arkadaşlar benim sizden istediğim bi timer kodu var kaç haftadır arıyorum bulamıyorum bi yardımcı olursanıza sevinirim
Öncelikle benim bi projem var media player oynatıcı bu oynatıcıya video başlattığımızda labelde bu videonun zamanını(dakika ve saniyesini)eklemek istiyorum ne yapmalıyım acil cevpalarsanız sevinirim !!!!
Serkan :
Aşağıdaki linkleri incele
https://www.codeproject.com/Tips/480490/A-Simple-Csharp-Player-Mp-with-NAudio
https://stackoverflow.com/questions/28046275/how-to-get-the-duration-of-mp3-track