C# interface örneklerini şimdiye kadar hep console ortamında hazırlamıştık. Şimdi Windows Form uygulaması yapacağız, ilk olarak aşağıdaki form tasarımını oluşturuyoruz. Form üzerinden girilen bilgilere göre müşterinin ödeyeceği tutarı hesaplayıp messagebox içinde sonuç olarak kullanıcıya gösteren uygulamayı interface (arayüz) kullanarak yapacağız.
İlk olarak arayüz nedir hemen bir daha hatırlayalım arayüz(interface) diğer sınıfların kullanabilecekleri değişken veya metotların tanımlandıkları ve sınıflara yol gösteren yapıdır. Programı yazarken
1-ilk olarak Sınıfın (Class) kullanacağı metot ve değişkenlerin tanımlandığı arayüzü (interface),
2-Arayüz(interface)’de tanımlanan değişkenleri ve metotları kullanacak olan sınıfı(class)
3-Tüm bunların kullanılacağı form kodlarını yazmak,
Şimdi sıra ile başlayalım
1- Arayüz Kodlarımız Sınıf(Class) içinde kullanılacak olan değişken ve metotlar
public interface IUrunSatis { int UrunFiyat { get; set; } int UrunAdet { get; set; } string Mad { get; set; } string Msad { get; set; } string bilgileriyaz(); }
2-Yukarıda tanımlanan metot ve değişkenlerin nasıl kullanılacağının gösterildiği sınıfımız(class)
class musteri:IUrunSatis { private int UFiyati,UAdeti; private string Madi,Msoyadi,Sonuc; public int UrunFiyat { get {return UFiyati;} set{UFiyati=value;} } public int UrunAdet { get {return UAdeti;} set{UAdeti=value;} } public string Mad { get { return Madi; } set{Madi=value;} } public string Msad { get {return Msoyadi;} set{Msoyadi=value;} } public string bilgileriyaz() { Sonuc="Sayın "+Madi+" "+Msoyadi+" ödeyeceğiniz tutar="+(UAdeti*UFiyati).ToString(); return Sonuc; }
3-Form üzerindeki hesapla butonuna basıldığı zaman çalışacak olan kodlarımız ve sınıf tanımlamamız.
musteri yenbilgi = new musteri(); private void button1_Click(object sender, EventArgs e) { yenbilgi.Mad = textBox1.Text; yenbilgi.Msad = textBox2.Text; yenbilgi.UrunAdet = Int16.Parse(textBox3.Text); yenbilgi.UrunFiyat = Int16.Parse(textBox4.Text); MessageBox.Show(yenbilgi.bilgileriyaz()); }
Şimdilik bu kadar sizlere kolay gelsin iyi çalışmalar ;)
Daha zor kod olsa daha iyi bizim hocalar daha zor soruyor