Form Tasarımı:
1- Başla,Dur, Temizle olmak üzere 3 buton yerleştiriyoruz.
2- Combobox; 1,1000,2000,3000,4000 hız seçeneklerini oluşturacağız. "1" seçtiğimizde sanise, "1000" seçtiğimizde saniye çalışacak.
3- listbox; başlangıç ve bitiş sürelerini yazdırmak için kullanacağız.
4- textbox; süre girişi için oluşturuyoruz.
5- label; KalanSure değerini kullancıya göstermek için.
6- Timer; Toolbox içinden "components" başlığı altında bulabilirsiniz.
code başlangıç
namespace temmuz_tekrar
{
public partial class Kronometre : Form
{
public Kronometre()
{
InitializeComponent();
}
//Değişkenimizi atıyoruz.
public int KalanSure;
//Başla Butonun işlemleri
private void button1_Click(object sender, EventArgs e)
{
// hatadan dolayı program kilitlenmesini önlemek için "try" kullanıyoruz.
try
{
//Süre yeri boş bırakılmasın.
if (textBox1.Text == "")
{
MessageBox.Show("süreyi girin");
}
//hız seçilmesi gerekmektedir.
else if (comboBox1.SelectedItem == null)
{
MessageBox.Show("Hız seçin");
}
//Değer girişinde eksiklik yoksa işlem başlar.
else
{
// Başlangıç zamanı "KalanSure" değişkenine atanır.
KalanSure = System.Convert.ToInt32(textBox1.Text);
// Kalan süre kullanıcıya gösterilir.
label4.Text = System.Convert.ToString(KalanSure);
// ListBox kontrolüne kayıt girilir.
listBox1.Items.Add("Kronometre balaşladı: " + DateTime.Now.ToString());
// ComboBox kontrolünden seçilen değer,
// Timer kontrolünün çalışma hızını belirler.
tmrKronometre.Interval = System.Convert.ToInt32(comboBox1.Text);
// Timer kontrolünü çalıştırır.
tmrKronometre.Start();
}
}
//Herhangi bir hata oluşursa veya
//"textBox"a rakam harici bir şey yazılırsa aşağıdaki hatayı verecektir.
catch (Exception)
{
MessageBox.Show("Lütfen sayı girin");
}
}
//Dur butonun işlemleri
private void button2_Click(object sender, EventArgs e)
{
// Timer kontrolünü durdurur.
tmrKronometre.Stop();
// ListBox kontrolüne kayıt girilir.
listBox1.Items.Add("Kronometre durduruldu: " + DateTime.Now.ToString());
}
private void tmrKronometre_Tick(object sender,EventArgs e)
{
// Her saniye geçtiğinde sure değeri 1 azalacaktır.
KalanSure = KalanSure - 1;
// KalanSure değeri kullancıya gösterilir
label4.Text = System.Convert.ToString(KalanSure);
// KalanSure değeri sıfıra ulaşmışsa kronometre durdurulur.
if (KalanSure == 0)
{
tmrKronometre.Stop();
listBox1.Items.Add("Süre Doldu: " + DateTime.Now.ToString());
MessageBox.Show("Süre doldu");
}
}
//Temizle butonunun işlemleri
private void button3_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
textBox1.Clear();
comboBox1.Text = "Hızı Seçin";
label4.Text = "0";
}
}
}
code bitiş
Not: yazilimhocasi.com da da benim tarafımdan yayınlanmıştır.
Hiç yorum yok:
Yorum Gönder