Bu yazı, C# programlama dili kullanarak Windows Forms üzerinde temel arayüz elemanlarıyla nasıl etkileşimde bulunabileceğimizi anlatan bir Akıllı ev örneği ele alınacaktır.
Uygulamada, GroupBox, CheckBox, Button ve ListBox gibi nesnelerin kullanımını göstererek, basit bir kontrol mekanizmasının nasıl kurulabileceğini adım adım inceleyeceğiz.
Ayrıca, if-else yapısının kullanımıyla, kullanıcı girişine dayalı koşullu işlemlerin nasıl gerçekleştirileceğini örneklendireceğiz.
Bu uygulamayı geliştirirken aşağıdaki adımları gerçekleştireceğiz:
- Form Elemanlarının Eklenmesi:
- İlk olarak, arayüze iki adet GroupBox, iki adet CheckBox, bir adet Button ve bir adet ListBox nesnesi ekleyeceğiz. GroupBox’lar, CheckBox’ların daha düzenli yerleştirilmesi için kullanılacak.
- İlk olarak, arayüze iki adet GroupBox, iki adet CheckBox, bir adet Button ve bir adet ListBox nesnesi ekleyeceğiz. GroupBox’lar, CheckBox’ların daha düzenli yerleştirilmesi için kullanılacak.
- Buton Olayı ve Koşullu İşlemler:
- Button nesnesine tıklandığında, CheckBox‘ların durumuna göre belirli mesajlar ListBox nesnesine eklenecek. Bu kısımda if-else yapısı kullanılacak:
- Eğer “Lamba Aç/Kapa” CheckBox’ı işaretliyse, “Lambalar Açık” mesajı ListBox’a eklenecek, aksi halde “Lambalar Kapalı” mesajı görünecek.
- Eğer “Kombi Aç/Kapa” CheckBox’ı işaretliyse, “Kombi Açık” mesajı ListBox’a eklenecek, aksi durumda “Kombi Kapalı” mesajı gösterilecek.
- Button nesnesine tıklandığında, CheckBox‘ların durumuna göre belirli mesajlar ListBox nesnesine eklenecek. Bu kısımda if-else yapısı kullanılacak:
Form Tasarımı:

C# Kodları:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | private void btnSistemKontrol_Click(object sender, EventArgs e) { lstRapor.Items.Clear(); if (chkLamba.Checked) { lstRapor.Items.Add("Lamba Açık"); } else { lstRapor.Items.Add("Lamba Kapalı"); } if (chkKombi.Checked) { lstRapor.Items.Add("Kombi Açık"); } else { lstRapor.Items.Add("Kombi Kapalı"); } } |
Bu kod parçası, Windows Forms uygulamasında bir buton tıklama olayıyla çalışmaktadır. Kullanıcı butona tıkladığında, iki adet CheckBox’ın durumunu kontrol ederek sonuçları bir ListBox’a ekler. Her tıklamada, ListBox’taki önceki sonuçlar temizlenir, böylece yalnızca güncel durum gösterilir.
İlk olarak, butona tıklanır tıklanmaz ListBox’ın içindeki öğeler temizlenir. Bu, yeni sonuçların eklenmesi öncesinde eski sonuçların silinmesini sağlar. Ardından, CheckBox’lar kontrol edilir. Eğer Lamba Aç/Kapa CheckBox’ı işaretliyse “Lamba Açık” mesajı, işaretli değilse “Lamba Kapalı” mesajı ListBox’a eklenir. Benzer şekilde, Kombi Aç/Kapa CheckBox’ı işaretliyse “Kombi Açık” mesajı, işaretli değilse “Kombi Kapalı” mesajı eklenir.
Bu yapı, if-else kontrol mekanizması kullanılarak, kullanıcı girişine göre farklı mesajların ekrana yansıtılmasını sağlar. Kodun amacı, kullanıcının CheckBox ile yaptığı seçimlerin raporlanması ve her tıklama sonucunda güncel verilerin görüntülenmesidir.
Ekran Çıktısı:
