www.pcbilgideposu.tr.gg
  MessageBox Yapısı
 
Merhaba arkadaşlar, bu makalemde ayrıntılı olarak MessageBox fonksiyonunu işleyeceğim.

MessageBox, kullanıcılara uyarı vermek veya kullanıcıdan bir işlemin yapılıp yapılmayacağının onayını 
almak için kullandığız bir fonksiyondur.

MessageBox'ın Kullanımı;

MessageBox fonksiyonun alabileceği toplam 7 adet parametre vardır biz sadece 5 tanesini 
kullanacağız ama onlarında ne olduğuna değinmeden geçmeyeceğim.

Bizi çok fazla da ilgilendirmeyen (burayı hiç okumadan diğer paragraftan devam edebilirsiniz 
:) ) ilk parametremiz: IWin32Window parametresidir. Bu parametre ile MessageBox 
penceremizin görünümünü klasik Windows pencereleri şeklinde göstermemizi 
sağlıyor diyebilirim. Ama tek başına kullanılmıyor IWin32Window nesne = null; olarak 
belirlememiz ve daha sonra MessageBox'ın en son parametresi olan MessageBoxOptions
 ile de pencerenin şeklini belirleyebiliyoruz. Bu parametrenin alabileceği 4 adet değer var 
ama bunlarda istersek kullanacağımız RtlReading değeridir. Bu değer MessageBox'daki 
ikonun sağ tarafta gösterilmesini sağlayabiliyoruz.

Çok fazla kafanızı karıştırmak istemiyorum. Benimde kafam karışıyor gerçekten. 
Şimdi MessageBox'ın en sık kullanacağımız fonksiyonlarına geçelim.

MessageBox'ın en basit kullanım şekli aşağıdaki gibidir. Bu kullanım şeklinde kullanıcıya sadece 
Mesaj İçeriği'ni gösteriyoruz:

MessageBox.Show("Mesaj içeriği");


Bundan sonraki kullanımlarında yavaş yavaş kullanıcılara daha ayrıntılı bir pencere sunabileceğiz.

Bu kullanımda kullanıcıya hem Mesaj İçeri'ğini gösterebileceğiz hem de pencere 
başlığına bir Başlık yazabileceğiz:

MessageBox.Show("Mesaj içeriği", "Başlık");


Gelelim üçüncü kullanım şeklimize MessageBox pencereleri sadece mesaj vermek için 
kullanılmıyor. Ayrıca mesaj sonucunda da kullanıcıya işlem yaptırabiliyoruz. Aşağıdaki
 kullanım şekliyle kullanıcıya gösterdiğimiz pencerede MessageBox fonksiyonunun standart 
Tamam butonunun dışına çıkarak Tamam ve İptal butonlarını kullanabileceğiz:

MessageBox.Show("Mesaj içeriği", "Başlık", MessageBoxButtons.OKCancel);


MessageBoxButtons ile sadece Tamam ve İptal butonları değil ayrıca aşağıdaki butonları da 
kullanabiliriz:

MessageBoxButtons.AbortRetryIgnore: Bu komut pencerede Durdur, Yeniden Dene,
 Yoksay butonlarını göstermemizi sağlar.

MessageBoxButtons.OK: Bu komut pencerede Tamam butonunu göstermemizi sağlar.

MessageBoxButtons.OKCancel: Bu komut pencerede Tamam ve İptal butonlarını 
göstermemizi sağlar.

MessageBoxButtons.RetryCancel: Bu komut pencerede Yeniden Dene ve İptal butonlarını
 göstermemizi sağlar.

MessageBoxButtons.YesNo: Bu komut pencerede Evet ve Hayır butonlarını göstermemizi sağlar.

MessageBoxButtons.YesNoCancel: Bu komut pencerede Evet, Hayır ve İptal butonlarını 
göstermemizi sağlar.

Gördüğümüz gibi MessageBox fonksiyonumuz giderek renkli bir görünüm alıyor. 
Bu kullanım şeklinde de MessageBox'ımıza bir ikon resmi koyabiliyoruz:

MessageBox.Show("Mesaj içeriği", "Başlık", MessageBoxButtons.OKCancel, 
MessageBoxIcon.Information);


Yukarıdaki örnek ile kullanıcıya bilgi ikonunun olduğu bir pencere gösteriyoruz. Ayrıya
 bu parametrede sadece bilgi ikonu ile sınırlı değil;

MessageBoxIcon.Asterisk: Bu komut pencerede genellikle bilgi mesajı vermede 
kullanılan "i" ikonunu göstermemizi sağlar.

MessageBoxIcon.Error: Bu komut pencerede genellikle hata mesajı vermede kullanılan 
kırmızı "X" ikonunu göstermemizi sağlar.

MessageBoxIcon.Exclamation: Bu komut pencerede genellikle hata mesajı vermede 
kullanılan sarı "!" ikonunu göstermemizi sağlar.

MessageBoxIcon.Hand: Bu komutta Error komutu ile aynı işlevdedir.
MessageBoxIcon.Information: Bu komutta Asterisk komutu ile aynı işlevdedir.

MessageBoxIcon.None: Bu komut ile herhangi bir ikon gösterilmez.

MessageBoxIcon.Question: Bu komut pencerede genellikle soru sorma işlemlerinde 
kullanılan "?" ikonunu göstermemizi sağlar.

MessageBoxIcon.Stop: Bu komutta Error komutu ile aynı işlevdedir.

MessageBoxIcon.Warning: Bu komut Exclamation komutu ile aynı işlevdedir.

Evet gelelim en son parametremize bu parametrede eklediğimiz butonlardan
 hangisinin aktif olacağını seçebileceğimiz 3 adet seçenek var. Button1, Button2 ve Button3:

MessageBox.Show("Mesaj içeriği", "Başlık", MessageBoxButtons.OKCancel, 
MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);


Yukarıda gösterdiğim kullanımda kullanıcıya gösterilen pencerede İptal butonu aktif olacaktır.

MessageBoxDefaultButton.Button1: Bu komut penceredeki butonlardan ilkini aktif eder.

MessageBoxDefaultButton.Button2: Bu komut penceredeki butonlardan ikincisini aktif eder.

MessageBoxDefaultButton.Button3: Bu komut penceredeki butonlardan üçüncüsünü aktif eder.

Aktif derken pencere gösterildiğinde seçili butondur.

Şimdi örnek uygulamalarımıza geçerek MessageBox fonksiyonumuzun biraz işe yaradığını görelim:

Uygulama 1: Bu en basit MessageBox uygulamamızdır. Neden en basit olduğunu daha sonraki 
uygulamaları görünce anlayacaksınız.

MessageBox.Show("MessageBox kullanımında son nokta", "MessageBox Başlığıdır",
MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Information,
MessageBoxDefaultButton.Button3);


Uygulama 2: Şimdi kullanıcıya Tamam ve İptal butonlarını gösteriyoruz ama ben 
kullanıcının neye tıkladığını nerden bileceğim diyorsanız bu uygulamada bunu nasıl 
yapabileceğimizi göreceğiz.

Uygulamamızda kullanıcıya hata yaptığına dair bir mesaj verelim ve mesaj sonucunda 
kullanıcı eğer Tamam butonuna tıklayınca "İşleminiz gerçekleşdi", İptal butonuna tıklayınca
 "İşleminiz iptal edildi" diye uyarı veren bir uygulama yapalım:

// Buradaki DialogResult ile MessageBox'dan dönen değer karşılaştırıyoruz.
if (MessageBox.Show("İşleminiz yapılırken hata oluştu.", "Hata Yaptınız", 
MessageBoxButtons.OKCancel) == DialogResult.OK) { MessageBox.Show("İşleminiz gerçekteşti"); } else { MessageBox.Show("İşleminiz iptal edildi"); }
 
  Copright © 2009 by pcbilgideposu webtasarım tüm hakları saklıdır.  
 
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol