19 Ocak 2014 Pazar

C Sharp Form Uygulamalar Sistem Saati ve Geriye Sayan Saat Uygulaması



KONU : C Sharp ( C# ) form uygulamalar sistem saatini gösterme, geriye doğru sayan saat yapımı, c# timer kullanımı, c# saat uygulaması, c# try catch blok örnekleri.





UYGULAMAYI İNDİR



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

namespace c_sharp_geriye_dogru_sayma
{
    public partial class Form1 : Form
    {
        DateTime zaman;

        int geriSayanZamanSaniye;

        int i = 1;

        int saat, dakika, saniye;
        
        public Form1()
        {
            InitializeComponent();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            saatiGuncelle();//timer1 başlatıldığında sistem saati güncellesin 

            geriSayanZamanSaniye -= 1; //gerisayım saatini bir azalt

            //text kutularında kalan zamanı göster

            txtSaat.Text = (geriSayanZamanSaniye / 3600).ToString("00");

            txtDakika.Text = ((geriSayanZamanSaniye % 3600) /60).ToString("00");

            txtSaniye.Text = (geriSayanZamanSaniye % 60).ToString("00");

            //Zaman tamamlandıysa timer ı durduralım.

            if (geriSayanZamanSaniye == 0)
                timer1.Stop(); //timerı durdur fonksiyonu

            lblGeriSayanSaat.Text = txtSaat.Text + ":" + txtDakika.Text + ":" + txtSaniye.Text;
        }

        private void btnBaslat_Click(object sender, EventArgs e)
        {
            //etiketimizdeki saati güncellemesini istiyorum

            //amacım sistem saatini görmek

            saatiGuncelle();

            //Geri sayım saatini güncellemek için 

            //saat,dakika ve saniye textbox larındaki değerleri ilk önce kontrol et

            //eğer girilen değer doğru ise işleme devam et

            bool sonuc = geriSayimSaatiniKontrolEt();

            if (sonuc)
            {

                geriSayanZamanSaniye = saat * 60 * 60 + dakika * 60 + saniye;

                timer1.Interval = 1000;

                timer1.Start();
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            saatiGuncelle();

            txtSaat.Text = "01";

            txtDakika.Text = "00";

            txtSaniye.Text = "00";

        }

        private void saatiGuncelle()
        {
            //sistem saatini götüntüleme

            zaman = DateTime.Now;

            lblSaat.Text = zaman.ToLongTimeString();
        }

        private bool geriSayimSaatiniKontrolEt()
        {

            //geri sayım için girilen saat, dakika ve saniye bilgilerini kontrol edelim

            // eğer bir hata varsa programımızın hata yapmaması için uyarı verelim


            try
            {
                //ilk önc girilen değerler rakam mı bunu kpnrol edelim
                
                saat = int.Parse(txtSaat.Text);

                dakika = int.Parse(txtDakika.Text);

                saniye = int.Parse(txtSaniye.Text);
                
                //Şimdi de giriln değerler doğru aralıklarda mı onu kontrol edelim

                if (saniye < 60 && dakika < 60 && saniye > -1 && dakika > -1 && saat > -1)
                    return true;
                else
                {
                    //Eğer bir hata varsa timerı durdurup uyarı verelim.

                    timer1.Stop();

                    return false;
                }
            }
            catch (Exception)
            {
                timer1.Stop();
  
                MessageBox.Show("Değerlerden birinde hata var", "Hata", 
                                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                
                return false;
            }
        }
    }
}

UYGULAMAYI İNDİR

Hiç yorum yok :

Yorum Gönder