C# C# Windows Form Örnekleri

C# Windows Forms ile Sınav Tarihi Takibi ve DateTime – TimeSpan Kullanımı

Bu makalede, Windows Forms kullanarak bir sınav tarihi takip uygulaması geliştireceğiz. Ayrıca, uygulama sırasında kullanılan DateTime ve TimeSpan sınıflarını detaylı bir şekilde inceleyeceğiz. Bu sınıflar, tarih ve zaman hesaplamaları yapmak için C#’ta sıkça kullanılır.


DateTime ve TimeSpan Nedir?

  • DateTime: Tarih ve saat bilgilerini tutar. Bu sınıf, belirli bir tarih ve saati temsil etmek veya mevcut tarih ve saati almak için kullanılır.
  • TimeSpan: İki tarih veya saat arasındaki farkı temsil eder. Bu sınıf, gün, saat, dakika, saniye ve milisaniye cinsinden süre hesaplamalarına olanak tanır.

DateTime Özellikleri

  • DateTime.Now: Sistemin şu anki tarih ve saatini döndürür.
  • DateTime.Today: Sadece gün bilgisini döndürür, saat kısmını 00:00 olarak ayarlar.
  • AddDays(), AddMonths(): Tarihe belirli bir süre eklemek için kullanılır.
  • ToShortDateString(), ToLongDateString(): Tarihi kısa veya uzun formatta string olarak döndürür.

TimeSpan Özellikleri

  • Days, Hours, Minutes: Sürenin gün, saat ve dakika cinsinden değerlerini döndürür.
  • TotalDays, TotalHours: Sürenin toplam gün veya saat cinsinden değerini verir.
  • Subtract(): İki tarih arasındaki farkı hesaplar.

Uygulama: Sınav Tarihi Takibi

Bu uygulamada, kullanıcılar sınav tarihlerini seçer ve DateTime ile TimeSpan sınıflarını kullanarak bu tarihlere kalan günler hesaplanır.


Kod Detayları

1. Gün Hesaplama Fonksiyonu

Aşağıdaki fonksiyon, seçilen tarih ile bugünün tarihi arasındaki farkı hesaplar:

  • DateTime.Now: Sistemin mevcut tarih ve saatini alır.
  • tarih - bugun: İki tarih arasındaki fark, bir TimeSpan nesnesi döndürür.
  • fark.Days: Bu farkın sadece gün cinsinden değerini verir.

2. Form Yükleme ve Başlık Ayarı

Form yüklendiğinde, pencere başlığına bugünün tarihini ekliyoruz:

  • DateTime.Today: Günün tarihini alır, ancak saat bilgisi içermez.
  • ToShortDateString(): Tarihi kısa formatta string olarak döndürür (örneğin, “26.12.2024”).

3. Buton Tıklama Olayı

Kullanıcı sınav tarihlerini seçtikten sonra butona tıkladığında, kalan günler hesaplanır:

  • dtpEdebiyat.Value: Kullanıcının Edebiyat sınavı için seçtiği tarihi alır.
  • lblEdebiyat.Text: Hesaplanan sonucu ilgili etiket üzerinde gösterir.

Örnek Çıktı:

Yorum yap