13 Haziran 2015 Cumartesi

C# Sayac Yapımı


Bu yayınımızda Timer kontrolünün DateTime sınıfı ile birlikte kullanım şekli gösterilmiştir. Bu uygulamada textbox a girilen süreden başlayarak geri sayan bir kronometre yapılmıştır. Uygulama tasarımı aşağıdaki gibidir.






Uygulama kodları ;


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace timerKontrolü2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int saat, dakika, saniye;
        DateTime zaman, kalınanzaman;
        Boolean duraklama = false;
        private void timer1_Tick(object sender, EventArgs e)
        {
            label1.Text = ((Convert.ToString(saat) + ":") + (Convert.ToString(dakika + ":") + Convert.ToString(saniye)));
            if ((saniye == 0) && (dakika > 0))
            {
                dakika = dakika - 1;
                saniye = 59;
            }
            else if ((saniye==0)&&(dakika==0)&&(saat>0))
            {
                saniye = 59;
                dakika = 59;
                saat = saat - 1;
            }
            if ((dakika==0)&&(saat>0))
            {
                dakika = 59;
                saat = saat - 1;
            }
            if ((saat==0)&&(dakika==0)&&(saniye==0))
            {
                timer1.Enabled = true;
                MessageBox.Show("Süre Bitti");
            }
            saniye = saniye - 1;
        }
        private void btn_Basla_Click(object sender, EventArgs e)
        {
            if (btn_Basla.Text=="Başla")
            {
                btn_Basla.Text = "Dur";
                if (duraklama==false)
                {
                    zaman = Convert.ToDateTime(textBox1.Text);
                    saat = zaman.Hour;
                    dakika = zaman.Minute;
                    saniye = zaman.Second;
                }
                else
                {
                    zaman = kalınanzaman;
                    saat = zaman.Hour;
                    dakika = zaman.Minute;
                    saniye = zaman.Second;
                }
                timer1.Start();
            }
            else
            {
                zaman = Convert.ToDateTime(label1.Text);
                btn_Basla.Text = "Başla";
                timer1.Stop();
                duraklama = true;
                kalınanzaman = Convert.ToDateTime(label1.Text);
            }
            if (saniye<10)
            {
                saniye =zaman.Second;
            }
        }
        private void btn_Bitir_Click(object sender, EventArgs e)
        {
            timer1.Enabled = false;
            label1.Text = textBox1.Text;
            if (btn_Basla.Text=="Dur")
            {
                btn_Basla.Text = "Başla";
            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            label1.BackColor = Color.Black;
        }
    }
}

Hiç yorum yok: