Serkan Ayyıldız

Meraklı bir yazılım uzmanı...

Visual Basic Datetime

Selam Visual Basic'ciler :)

Yeni bir makaleyle yine karşınızdayım ve bugünkü makalemizde visual basic ile datetime kullanımını göreceğiz.

Aslına bakarsanız bu konuyu C# kategorisinde daha önce paylaşmıştım ve bu makalede yazılanlar C# Datetime Yapısı ve Örnekleri isimli makaleyle ortak yönleri olduğu için incelemenizi öneririm,zira aynı şeyleri paylaşmak yerine konuyu hızlı ve örneklerle işleyelim diyorum :)

Datetime,adından da anlaşılacağı gibi tarih-zaman anlamına gelir ve yazılım dünyasında özellikle zaman kullanımı gerektiren olaylarda çok sık kullanılmaktadır.Bu yüzden datetime yapısını her yazılımcı çok iyi bilmelidir.

Java ve diğer programlama dillerine göre .net framework destekli C# ve Visual Basic'te daha kapsamlı ve kolay kullanıma sahiptir,aynı zamanda anlık zaman biriminde değişimler yapabilmemizi sağlar.Konuyu örneklerle devam ettirmek için Visual Studio'yu açıp VB.Net dilinde bir Windows Form projesi oluşturalım ve projenin adına "dateTimeApp" adını verelim,ardından ekrana gelen form yapısının üstündeki mavi şeride (adını unuttum :) ) tıklayalım ve formun load eventine geçelim:

visual-basic

Datetime kullanımı için Datetime sınıfından bir instance alalım:

DateTime

Bu noktada yaptığımız durumu şöyle özetleyebiliriz,Datetime sınıfından bir instance aldık ve instance karşılığı olarak kullanmak istediğimiz şu anki anı yani Datetime.Now değerini atadık.Eğer karşılık atamadan doğrudan alt satıra geçseydik hata almazdık ancak bilinmeyen zaman kavramı açısından kodlar sağlıklı sonuçlar doğurmayacaktı.

Ardından zaman değişkenimize nokta ekleyerek overload yapılarına bir gözatalım:

Datetime-Overloads

Gördüğünüz gibi "zaman" değişkenimizin overloadlarını yukarıdan aşağı sıralarsak;zaman,gün,haftanın günü gibi çeşitli değerler döndürmektedir.

Az önce bahsettiğim C# kategorisindeki makalemdeki gibi konuya örneklerle devam edelim ve yakaladığımız her değeri MessageBox.Show() metoduyla ekrana yansıtarak ilerleyelim.

Not:Aşağıdaki başlıkların Datetime ile başlaması "zaman" örneğiyle aynı anlamdadır.

1-Datetime.Date

Anlık tarihi geri döndürür ancak saat bilgisini vermez:



MessageBox

2-Datetime.Day

Bulunduğumuz ayın takvim gününü geri döndürür,örneğin "Bugün ayın kaçı?" sorunun cevabını verir.



3-Datetime.DayOfWeek

Bulunduğumuz haftanın kaçıncı gününde olduğumuzu geri döndürür:



4-Datetime.DayOfYear

Bulunduğumuz yılın kaçıncı gününde olduğumuzu geri döndürür:



5-Datetime.Hour

Bulunduğumuz 24 saatlik günün saat değerini geri döndürür,ancak dakika,saniye ve mili saniye 
bilgilerini vermez:



6-Datetime.Kind

O an da Greenwich dünya saat dilimleri arasında kaçıncı aralıkta olduğumuzu belirtir,yaz saati uygulaması ve kış saati uygulamasından aklınızda tutabilirsiniz. (Coğrafya Bilgisi :) )



7-Datetime.Millisecond

Bulunduğumuz anın mili saniye cinsinden değerini döndürür:



8-Datetime.Minute

Bulunduğumuz saatin kaçıncı dakikasında olduğumuzu verir:



9-Datetime.Month

12 aylık takvim yılında kaçıncı ayda olduğumuz bilgisini verir:



10-Datetime.Second

Bulunduğumuz dakikanın kaçıncı saniyesinde olduğumuz bilgisini verir:



11-Datetime.Ticks

1 Ocak 0001 12:00:00 tarihinden bu yana geçen saniyelerin toplamını verir,ticks denmesinin nedeni 
klasik bir saatin çalışırken çıkardığı tik-tak sesinden kaynaklanmaktadır.En ilginç bulduğum bir kod 
yapısıdır :)



12-Datetime.TimeOfDay

TimeSpan sınıfından türeyen ve Datetime sınıfıyla da bağdaşık bir metot olduğu için tek başına kullanılamaz,doğrudan kullanmak için .ToString() metoduyla birlikte kullanılır.Günün saat bilgisini verir,Datetime.Hour'dan farkı saat,dakika,saniye ve mili saniye bilgisini tek seferde verir:





13-Datetime.Year

Bulunduğumuz yılı ifade eder:





Buraya kadar gördüklerimiz ortak metotlardı ve birazda detaylara girelim istiyorum,şimdi aşağıda gösterdiğim yere tıklayınız:

overload

datetime-method

Artık tüm Datetime sınıfı metotlarını görebiliyoruz ve yazının başında da bahsettiğim gibi Datetime sınıfı yalnızca bize bulunduğumuz tarih ve zaman bilgisi vermenin yanı sıra aynı zamanda bulunduğumuz anın değerleriyle oynama şansı da sunmaktadır,örneğin bugünün tarihi 20 Temmuz 2013 ve ben bu tarihe 3 gün ekleyip zamanı ileriye saracağım.

Bunu yapabilmenin yolu da "Add" deyimiyle başlayan metotlardan geçmektedir,bu örneği uygularsak:





Gördüğünüz gibi 3 gün öteye geçtik ve ışınlama tamamlandı kaptan :)

Aynı durumu zamanı geri sarma işlemi için de gerçekleştirebiliriz,mesela şu anda saat tam 12:01 ve ben 4 saat geri gidiyorum:





Gördüğünüz gibi Datetime ile zamanda ekleme çıkarmalar yapabiliyoruz ve bu en beğendiğim özelliğidir.Add metotlar parametre olarak double veya int tipinde değerler istemektedir ve bu yüzden negatif değer vererek zamanda geri dönebiliyoruz.
Diğer Add metotları yine aynı mantıkta çalıştığı için biraz kendiniz keşfedin diyor ve yazının sonuna gelmiş bulunuyoruz.

Bir sonraki makalemizde görüşmek dileğiyle hoşçakalın :)

Projeyi İndir

1 Yorum:

  1. Alper
    12/25/2014

    Dersler için teşekkürler de Vb.Net kullanan insanlara da C# üzerinden kakıç yapmasanız keşke :-)

Bir yorum bırak E-posta adresiniz yayınlanmayacaktır.

Menu