Bu Blogda Ara

22 Şubat 2011 Salı

C# İkinci Geniş kapsamlı Konsol Uyulaması

Bu makalede sizlere benimde yeni öğrendiğim timer nesnesi oluşturmayı anlatacağım.Uygulamada bir kütüphane ekleyeceğiz bunu aşağıda using diye devam eden kodda görebilirsiniz.
Uygulamada kullanıcıdan bir gersi sayım isteniyor.Bu bir sayı olacak örn:100 sonra bunu bir değişkende tutarak bir de saniye isteniyor yani gerisayım kaç saniyede bir ekranda gösterilsin diye.Bunuda kullanıcı istediği gibi giriyor.Bu bilgilerden sonra timer nesnesi aktif oluyor ve geri sayım 0 a kadar olacağı için her seferinde sayac yani gerisayıma bakıyor eğer 0 dan büyükse geri sayarak sayıyı eksiltecek.Ne zaman 0 veya 0 dan küçük ise o zaman döngü bitecek.Alında yine kullanıcının girmiş olduğu saniyede bir bunu kontrol ediyor.Bunu if ile sağladım.Kodlar aşağıdaki gibidir.Altta resimler nasıl olduğunu gösteriyor.Kullanıcı ne zaman q girerse o zaman uygulama sonlanacak...

using System.Timers;

namespace Konsol_Gerisayım
{
    class Program
    {
       
        public static int sayac,saniye;
        static void Main(string[] args)
        {
            string saniyeStr,sayacStr;

            Console.ForegroundColor = ConsoleColor.White;
            Console.Write("Gerisayım girin : ");
            Console.ForegroundColor = ConsoleColor.Blue;
            sayacStr =Console.ReadLine();
            Console.ForegroundColor = ConsoleColor.White;
            Console.Write("Kaç saniyede bir: ");
            Console.ForegroundColor = ConsoleColor.Blue;
            saniyeStr = Console.ReadLine();
            saniye = Convert.ToInt32(saniyeStr + "000") ;
            sayac = Convert.ToInt32(sayacStr);   
            System.Timers.Timer zaman = new System.Timers.Timer();
            zaman.Enabled = true;
            zaman.Elapsed += new ElapsedEventHandler(OnTimedEvent);
            zaman.Interval = saniye;
            while (Console.Read() != 'q') ;

        }

        private static void OnTimedEvent(object source, ElapsedEventArgs e)
        {
            if (sayac >= 1)
            {
                sayac--;
                Console.WriteLine(sayac);
            }
        }

    }
}

Uygulama resmini buradan bakabilirsin.

Hiç yorum yok:

Yorum Gönder