Radio buton çok seçenek arasından bir tane seçim yapmamızı saÄŸlayan araçtır. Mesela cinsiyet sorduÄŸumuzda ya erkektir yada kadın bunun gibi tek seçim yaptırmak istediÄŸimiz yerlerde radio buton nesnesini kullanırız.
Programınıza eklemek istediÄŸiniz nesneyi toolbox içinden seçerek ister sürükleyerek form üzerine bırakın, ister nesneye çift tıklayın, isterseniz de nesneye bir kez tıkladıktan sonra form üzerine tıklayarak çizin. Bütün yollarla nesneyi form üzerine ekleyebilirsiniz. AÅŸağıdaki resimde radiobutton nesnesini görebilirsiniz.
Radio Button Özellikleri:
BackColor:Radio Butonun arkaplan rengini deÄŸiÅŸtirmemizi saÄŸlar.
BackgroundImage: RadioButonun arkaplanına resim yerleştirmemizi sağlar.
BackgroundImageLayout: RadioButonun arkaplan resminin boyutlandırılmasını saÄŸlar. Bu özellik içindeki parametreleri tanıyalım.
-
None:Resmin boyutunda deÄŸiÅŸiklik olmadan resmi butonun sol-üst köÅŸesine yerleÅŸtirir.
-
Tile:Resmin boyutunda deÄŸiÅŸiklik olmaz ama resmi sol-üst köÅŸeden baÅŸlayarak butonun boÅŸ kalan arkaplanına resmi çoÄŸaltarak doldurur.
-
Center:Resmi butonun ortasına yerleştirir.
-
Stretch: Resim büyükse küçülterek, küçükse büyülterek resmi butona sığdırır. Resmi butonun ebatlarına getirerek taÅŸmayacak ÅŸekilde yerleÅŸtirir.
-
Zoom:Resim küçükse buton nesnesine sığacak ÅŸekilde büyüterek yerleÅŸtirir.
Checked:Radio Butonun seçili olup olmadığının belirtileceÄŸi yerdir. True ise radio buton seçili olur.
Cursor:Radio Buton üzerine gelince farenin ÅŸeklini deÄŸiÅŸtirmemizi saÄŸlar. Ok, El simgesi, artı simgesi, vs…
FlatStyle: RadioButon nesnesinin çerçevesinin ÅŸeklini deÄŸiÅŸtirmemizi saÄŸlar.
Font: RadioButon etiket yazısının yazıtipini seçmemizi saÄŸlar.
ForeColor: RadioButon etiket yazısının rengini değiştirmemizi sağlar.
Image:Radio Butona resim yerleÅŸtirmemizi saÄŸlar. Kaynak: www.mustafakarsli.com
ImageAlign:Resmin radio buton üzerinde hizalanmasını saÄŸlar. Sol, orta, saÄŸ,..
Text:Radio Butonun etiket yazısını deÄŸiÅŸtirmemizi saÄŸlar. radioButton1, radioButton2,…
TextAlign: RadioButon üzerindeki yazının hizalanmasını saÄŸlar. Left-sola hizalı, right-saÄŸa hizalı ve center-ortalıdır.
TextImageRelation:Radio Buton üzerindeki resim ile buton yazısının nasıl yerleÅŸtirileceÄŸini belirlemimizi saÄŸlar.
-
Overlay:Resim altta resmin üzerinde ve ortasında yazı olur.
-
ImageAboveText:Resim üstte yazı altta olur.
-
TextAboveImage:Yazı üstte resim altta olur.
-
ImageBeforeText:Solda resim sağda yazı olur.
-
TextBeforeImage:Solda yazı sağda resim olur.
Enabled:Radio Buton nesnesinin aktif yada pasif olmasını sağlar. True ise radio buton aktifdir.
TabIndex: Form içindeki nesnelere tab tuÅŸu ile eriÅŸimde kaçıncı sırada olmasını istiyorsak buraya o sayı yazılır. Dikkat edilmesi gereken numaralandırma sıfırdan baÅŸlamaktadır.
Visible:Radio Butonun görünüp görünmemesinin ayarlandığı yerdir. True ise radio buton görünür.
Name: RadioButonun tanımlayıcı adını değiştirmemizi sağlar. Bu başlık değildir, radio butonun kaynak adıdır, değişken adıdır. İşlem yaparken kullanılacak adıdır. Eğer programlamada yeniyseniz bunu değiştirmemenizi tavsiye ediyorum.
Locked: RadioButon nesnesini kilitlememizi saÄŸlar. Kaynak: www.mustafakarsli.com
Location: RadioButonun form üzerindeki konumunun yazılacağı alandır. x ekseni; y ekseni ÅŸeklinde deÄŸer yazılır.
MaximumSize: RadioButonun boyutlarının alabileceÄŸi en büyük deÄŸerlerin yazıldığı alandır. GeniÅŸlik; Yükseklik ÅŸeklinde deÄŸer yazılır.
MinimumSize: Radio Butonun boyutlarının alabileceÄŸi en küçük deÄŸerlerin yazıldığı alandır. GeniÅŸlik; Yükseklik ÅŸeklinde deÄŸer yazılır.
Size: RadioButonun geniÅŸlik ve yükseklik boyutlarının deÄŸiÅŸtirildiÄŸi alandır. GeniÅŸlik; Yükseklik ÅŸeklinde deÄŸer girilir.
Yukarıdaki bilgilere göre radio butonu biçimlendirebiliriz. Gelelim radio butonu kullanmaya.
Radio Buton Tıklanma Olayı (Seçim deÄŸiÅŸtirme olayı):
Radio butona tıkladığınızda yani radio butonu seçtiÄŸimizde iÅŸlem yaptırmak istiyorsak form ekranında radio buton üzerine çift tıklayarak aÅŸağıdaki gibi radio buton sınıfını kod ekranında oluÅŸturmuÅŸ oluruz.
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
}
Kaynak: www.mustafakarsli.com
Yukarıdaki kod radio buton 1’in deÄŸiÅŸtirildiÄŸi yani seçildiÄŸinde yaptırmak istenilenlerin yazılacağı kod bloÄŸudur.
ÖrneÄŸin; radio buton 1 seçimi deÄŸiÅŸtiÄŸinde mesaj penceresinde radio buton 1’in seçimi deÄŸiÅŸti yazdıracak olursak:
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
MessageBox.Show("Radio Buton 1 in seçimi deÄŸiÅŸti");
}
Burada dikkat edilecek nokta radio buton 1 seçili deÄŸilken seçilirse mesaj penceresi gelir. Radio Buton 1 seçili iken baÅŸka radio buton seçilirse de mesaj penceresi gelir. Nedeni ise radio butonun seçiminin deÄŸiÅŸmesinden kaynaklanmaktadır. Yani radio buton 1 seçiliydi ve radio buton 2 yi seçtiÄŸimizde radio buton 1 seçimi bıraktığı için seçiminde hareket olduÄŸu için yine mesaj penceresi gelecek ama radio buton1 seçili deÄŸilken baÅŸka radyo butonları kendi arasında seçilirse mesaj penceresi çıkmayacaktır. Çünkü radio buton 1 de deÄŸiÅŸiklik yapılmamıştır.
Radio Butonun Seçili Olmasına Göre Ä°ÅŸlem Yapılması:
Programımızda 2 tane radio buton var diyelim ve bu iki radio butonun seçili olmasına göre seçili butonu yazdırmak istiyoruz bu iÅŸlemi radio butonun checked özelliÄŸini sorgulayarak yaparız.
AÅŸağıda iki radio butona göre mesaj yazdıran örneÄŸi inceleyecek olursak;
Öncelikle 1 buton ve 2 radio buton ekleyip butonun tıklanması olayını aÅŸağıdaki gibi yazıp çalıştıracak olursak radio buton 1 seçili iken butona basılırsa mesaj penceresinde radiobuton 1 seçili yazacak radio buton 2 seçili iken butona basılırsa mesaj penceresinde radiobuton 2 seçili yazacaktır.
private void button1_Click(object sender, EventArgs e)
{
if (radioButton1.Checked == true) MessageBox.Show("radiobuton 1 seçili");
else if (radioButton2.Checked == true) MessageBox.Show("radiobuton 2 seçili");
}
Örnekler bu ÅŸekilde çoÄŸaltılabilir. Birde aynı form içinde ne kadar radio buton varsa hepsi tek grup olarak hareket eder yani sadece bir seçim yapılır. Aynı form içinde farklı gruplar oluÅŸturmak istiyorsanız. Ayrı grup yapacağınız radio butonları panel yada groupbox nesnesi üzerine ekleyerek yapınız.
Ä°lerleyen günlerde tekrar görüÅŸmek üzere saÄŸlıcakla kalınız…
Mustafa KARSLI Kaynak: www.mustafakarsli.com