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.
Bizi çok fazla da ilgilendirmeyen 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.
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:
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 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:
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.
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.
En son parametremiz de bu parametrede eklediğimiz butonlardan hangisinin aktif olacağını seçebileceğimiz 3 adet seçenek var. Button1, Button2 ve Button3:
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.
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:
:kheart: İyi Forumlar :kheart:
MessageBox'ın Kullanımı;
MessageBox fonksiyonun alabileceği toplam 7 adet parametre vardır biz sadece 5 tanesini kullanacağız.
Bizi çok fazla da ilgilendirmeyen 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.
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");
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.
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.
En son parametremiz de 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");
}
:kheart: İyi Forumlar :kheart: