c# Desktop

Kredi Kartı Taksitlendirme İşlemini Yapan c# Uygulaması

Alış verişlerde müşterilerin en çok istediği özellik taksit ve taksit sayısının çokluğudur. Bu uygulamamızda girilen fiyatın belirtilen taksitlere ayrılması işlemini göreceğiz. Bu uygulama ile neler öğreneceğiz.

Yeni bir proje oluşturma

Projeye nesneler ekleme

Nesnelerin özelliklerini belirleme

Kod sayfasına geçme

Projeyi çalıştırma

Karar kontrol deyimini kullanma

Şimdi uygulamayı yapmaya başlayalım.

Adım 1: Öncelikle form sayfasının tasarımını gerçekleştirmeliyiz. Bunun için paint programını kullanabiliriz.

Adım 2: Visual Studio programını açınız. Bunun için devenv komutunu kullanabilirsiniz.

Adım 3: Create a new project diyerek yeni bir proje oluşturunuz. Dil olarak c#, platform olarak Windows, ortam olarak Desktop seçiniz. Ekrana gelen şablonlardan Windows Form App(.Net Framework) seçiniz.

Adım 4: Proje ismini KasaIslemleri olarak belirleyiniz. FrameWork olarak 4.5 tercih ediniz. Projenizi kullanacak son kullanıcıların bilgisayarlarındaki versiyonu dikkate alarak bu tercihi yapınız. Böylece projeniz daha fazla insan tarafından kullanılacaktır. Create diyerek işlemi tamamlayınız.

Adım 5: Ekrana Form1 form penceresi gelecektir. Formun başlığını değiştirelim. Form seçiliyken forma ait özellikleri görmek için Properties paneline gelelim. Burada Text özelliğine gelelim. Buraya "Kasa" yazalım ve Enter tuşuna basarak değişikliği onaylayalım. Arkaplan rengini değiştirelim. Bunun için BackColor özelliğine gelelim ve ActiveCaption hazır rengini seçelim. Formun büyüklüğünü ayarlayalım. Bunun için Size özelliğine gelelim. Width özelliğini 350, Height özelliğini 325 olarak değiştirelim. Formun ekranın ortasında açılması için StartPosition özelliğini CenterScreen olarak değiştirelim. Projeyi çalıştırıp sonucu görelim.

Adım 6: Şimdi tasarıma uygun nesneleri yerleştirelim. Forma bir adet Label ekleyelim. Label seçiliyken Properties panelinden Text özelliğine gelelim ve buraya "Toplam Tutar" yazalım. Projeyi çalıştırıp sonucu görelim.

Adım 7: Label nesnesini yanına TextBox ekleyelim. TextBox seçiliyken Properties panelinden Name özelliğine gelelim. Buraya txtFiyat yazalım. Projeyi çalıştırıp sonucu görelim.

Adım 8: Projeye bir adet GroupBox ekleyelim. Text özelliğine "Ödeme Şekli" yazalım. Font özelliğinden Size parametresine gelerek yazı büyüklüğünü 12 yapalım. ForeColor özelliğine gelerek yazı rengini mavi yapalım. Projeyi çalıştırıp sonucu görelim.

Adım 9: GroupBox içine 5 tane RadioButton ekleyelim. Bunları alt alta sıralayalım. Hepsini seçelim ve rengini siyah yapalım. Birinci radiobuttonu seçelim ve Text özelliğine "Tek Çekim" yazalım. İkinciye "İki Taksit(%3 ek fiyat)" yazalım. Üçüncüye "Üç Taksit(%5 ek fiyat)" yazalım. Dördüncüye "Dört Taksit(%7 ek fiyat)" yazalım. Beşinciye "Beş Taksit(%9 ek fiyat)" yazalım. Projeyi çalıştırıp sonucu görelim.

Adım 10: Forma bir adet Button ekleyelim. Text özelliğine gelelim. Buraya "Ödeme Yap" yazalım. Projeyi çalıştırıp sonucu görelim. Aşağıdaki gibi bir form ekranı oluşacaktır.

Adım 11: Projenin form ekranı tamamlandı. Şimdi kodlama işlemine geçebiliriz. Öncelikle program çalıştığında imlecin txtFiyat kutusuna konumlanmasını sağlayalım. Bu işlemi gerçekleştirmek için Formun Load olayını kullanacağız. Form sayfası seçiliyken farenin sol tuşuna iki defa arka arkaya basalım. Aşağıdaki kodu yazalım. Projeyi çalıştırıp sonucu görelim.

        private void Form1_Load(object sender, EventArgs e)
        {
            txtFiyat.Focus();
        }

Adım 12: Şimdi butonun Click olayını oluşturalım. Bunun için Button seçiliyken farenin sol tuşuna arka arkaya iki defa basabiliriz. Öncelikle kullanıcının ne kadar tutar yazdığını bulalım. Toplam tutar ondalıklı olacağı için double tipinde bir değişken tanımlamalıyız. Değişkenin adını fiyat olarak verelim. Projeyi çalıştırıp sonucu görelim.

        private void button1_Click(object sender, EventArgs e)
        {
            double fiyat = Convert.ToDouble(txtFiyat.Text);
            MessageBox.Show("Harcama tutarı :" + fiyat);
        }

Adım 13: Şimdi de kullanıcının hangi Radyo butona tıkladığını bulalım. Bunun için Radyo butonun checked özelliğinden yararlanacağız. Elde ettiğimiz değeri sayısal bir değişkene aktaralım. Değişkenin adını taksitSayisi olarak belirleyelim. Projeyi çalıştırıp sonucu görelim.

        private void button1_Click(object sender, EventArgs e)
        {
            double fiyat = Convert.ToDouble(txtFiyat.Text);
            int taksitSayisi = 0;
            if (radioButton1.Checked)
            {
                taksitSayisi = 1;
            }
            if (radioButton2.Checked)
            {
                taksitSayisi = 2;
            }
            if (radioButton3.Checked)
            {
                taksitSayisi = 3;
            }
            if (radioButton4.Checked)
            {
                taksitSayisi = 4;
            }
            if (radioButton5.Checked)
            {
                taksitSayisi = 5;
            }
            MessageBox.Show("Harcama tutarı :" + fiyat);
            MessageBox.Show("Taksit sayısı :" + taksitSayisi);
        }

Adım 14: Taksit sayısına göre ödenecek tutarı bulmaya çalışalım. Bunun için tutar isminde bir değişken tanımlayalım. Girilen miktarı taksit tutarına bölelim. Projeyi çalıştırıp sonucu görelim.

        private void button1_Click(object sender, EventArgs e)
        {
            double fiyat = Convert.ToDouble(txtFiyat.Text);
            int taksitSayisi = 0;
            double tutar = 0;
            if (radioButton1.Checked)
            {
                taksitSayisi = 1;
            }
            if (radioButton2.Checked)
            {
                taksitSayisi = 2;
            }
            if (radioButton3.Checked)
            {
                taksitSayisi = 3;
            }
            if (radioButton4.Checked)
            {
                taksitSayisi = 4;
            }
            if (radioButton5.Checked)
            {
                taksitSayisi = 5;
            }
            tutar = fiyat / taksitSayisi;
            MessageBox.Show("Harcama tutarı :" + fiyat);
            MessageBox.Show("Taksit sayısı :" + taksitSayisi);
            MessageBox.Show("Ödenecek taksit :" + tutar);
        }

Adım 15: Şimdi de taksit tarihlerini ve ödeme raporunu oluşturalım. Bunun için projeye yeni bir form ekleyelim. Formun başlığını "Ödeme Raporu" olarak belirleyelim. Formun ekranın ortasında açılmasını sağlayalım. 

Adım 16: Birinci formdan ikinci forma geçiş işlemini yapmamız gerekiyor. Bu işlemleri butonun Click olayında yapmalıyız. Kodları düzenleyelim. Projeyi çalıştırıp sonucu görelim.

        private void button1_Click(object sender, EventArgs e)
        {
            Form2 rapor = new Form2();

            double fiyat = Convert.ToDouble(txtFiyat.Text);
            int taksitSayisi = 0;
            double tutar = 0;
            if (radioButton1.Checked)
            {
                taksitSayisi = 1;
            }
            if (radioButton2.Checked)
            {
                taksitSayisi = 2;
            }
            if (radioButton3.Checked)
            {
                taksitSayisi = 3;
            }
            if (radioButton4.Checked)
            {
                taksitSayisi = 4;
            }
            if (radioButton5.Checked)
            {
                taksitSayisi = 5;
            }
            tutar = fiyat / taksitSayisi;
            MessageBox.Show("Harcama tutarı :" + fiyat);
            MessageBox.Show("Taksit sayısı :" + taksitSayisi);
            MessageBox.Show("Ödenecek taksit :" + tutar);
            rapor.Show();
        }

Adım 17: İkinci forma bir adet ListBox ekleyelim. Yazı büyüklüğünü 12 yapalım. Burada rapor oluşturacağız. Formun Load olayına gerekli kodları yazalım. Projeyi çalıştırıp sonucu görelim.

Form2 kodları

namespace KasaIslemleri
{
    public partial class Form2 : Form
    {
        double toplam = Form1.fiyat;
        double taksitSayisi = Form1.taksitSayisi;
        public Form2(double fiyat, int taksit)
        {
            InitializeComponent();
            toplam = fiyat;
            taksitSayisi = taksit;
        }

        private void Form2_Load(object sender, EventArgs e)
        {
            listBox1.Items.Clear();

            double tutar = toplam / taksitSayisi;

            for (int i = 1; i <= taksitSayisi; i++)
            {
                DateTime taksitTarihi = DateTime.Now.AddMonths(i);
                //Hafta Sonuna Denk Gelmesin:
                switch (taksitTarihi.DayOfWeek)
                {
                    case DayOfWeek.Saturday:
                        taksitTarihi = taksitTarihi.AddDays(2);
                        break;
                    case DayOfWeek.Sunday:
                        taksitTarihi = taksitTarihi.AddDays(1);
                        break;

                }// Buradaki "C2", TL Cinsini Göstermektedir:
                listBox1.Items.Add(taksitTarihi.ToLongDateString() 
                                   + "  |   " + tutar.ToString("C2"));
            }

        }
    }
}

Form1 kodları

namespace KasaIslemleri
{
    public partial class Form1 : Form
    {
        public static double fiyat;
        public static int taksitSayisi = 0;
        double tutar = 0;
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            txtFiyat.Focus();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            double fiyat = Convert.ToDouble(txtFiyat.Text);

            if (radioButton1.Checked)
            {
                taksitSayisi = 1;
            }
            if (radioButton2.Checked)
            {
                taksitSayisi = 2;
            }
            if (radioButton3.Checked)
            {
                taksitSayisi = 3;
            }
            if (radioButton4.Checked)
            {
                taksitSayisi = 4;
            }
            if (radioButton5.Checked)
            {
                taksitSayisi = 5;
            }
            tutar = fiyat / taksitSayisi;
            MessageBox.Show("Harcama tutarı :" + fiyat);
            MessageBox.Show("Taksit sayısı :" + taksitSayisi);
            MessageBox.Show("Ödenecek taksit :" + tutar);
            Form2 rapor = new Form2(fiyat, taksitSayisi);
            rapor.Show();
        }
    }
}

Makaleyi beğenmeyi ve paylaşmayı unutmayalım. Emeğe saygı gösterelim. Sorularınızı ve yapmamıızı istediğiniz problemleri bize yazabilirsiniz. İyi çalışmalar....


İlgili Makaleler
Basit Veri Bağlama (Simple Data Binding)
Veri Girişi Doğrulama (Input Validation)
TabControl Panelini Kullanarak Lokantalar İçin Müşteri Siparişi Alan c# Form Uygulaması
c# Programında Bigpara Sayfasından Borsa Verilerini Selenium Kütüphanesini Kullanarak Çekme
Kompleks Veri Bağlama (Complex Data Binding)
Veri Girişi Maskeleme (MaskedTextBox)
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Kodlama
Yıkıcı Metotlar (Destructors)
Tombala Oyununu Yapan Uygulamayı c# Dilinde Kodlama1
Konsol Ekranında Kod Yazma ve Çalıştırma
Rastgele Seçilen Bir Sayıyı Basamaklarına Ayıran, Basamak Değerini ve Sayı Değerini Bulan c# Console Uygulaması
Kaçan Buton Oyununu Yapan c# Uygulaması
Form Sınıfına Ait Bazı Olayların ve Özelliklerin Kullanılmasına Ait Örnek Uygulama
Form Sınıfı
Kredi Kartı Taksitlendirme İşlemini Yapan c# Uygulaması
c# Console Uygulamalarında Ping Nasıl Kullanılır, Ping Atma
Metodu Sonlandırma
Verilen İki Matrisi Çarpan Programı c# Dilinde Form Ortamında Yapınız
Yazdırma İletişim Kutusu (PrintDialog)
Tetris Oyununu C# Dilini Kullanarak Form Sayfasında Kodlama1
Yorumlar
  YİĞİT  dediki;
kopyalanabilse daha iyi
24.10.2023 11:10:00

Yorum Ekle
   
Kötü
İyi