Görsel Programlama (Güz-2016) Hafta-12-2

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace ornek1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            curun.Text = "Seçiniz";
            totv.Text = "60";
            tkdv.Text = "18";
        }

        private void bekle_Click(object sender, EventArgs e)
        {
            int secilen = curun.SelectedIndex;
            int miktar;
            bool k = Int32.TryParse(tmiktar.Text, out miktar);

            if (k && secilen > -1)
            {
                lurun.Items.Add(curun.Text);
                lmiktar.Items.Add(miktar);
                double toplamtutar = miktar * (double)fiyat.Items[secilen];
                ltoplam.Items.Add(toplamtutar);
                curun.Text = "Seçilen";
                tmiktar.Clear();
                hesapla();
            }
        }

        private void hesapla()
        {
            double toplam = 0;
            for (int i = 0; i < ltoplam.Items.Count; i++)
                toplam += (double)ltoplam.Items[i];

            double otv, kdv;
            bool k1 = Double.TryParse(totv.Text, out otv);
            bool k2 = Double.TryParse(tkdv.Text, out kdv);

            if (k1 && k2)
            {
                otv *= 0.01;
                kdv *= 0.01;
                toplam = (toplam * (1 + otv)) * (1 + kdv);
            }

            latoplam.Text = toplam + " TL";


        }

        private void bsil_Click(object sender, EventArgs e)
        {
            int secilen = lurun.SelectedIndex;

            if (secilen > -1)
            {
                lurun.Items.RemoveAt(secilen);
                lmiktar.Items.RemoveAt(secilen);
                ltoplam.Items.RemoveAt(secilen);
                hesapla();
            }

        }

        private void bdyaz_Click(object sender, EventArgs e)
        {
            string yazilacak = "";

            for (int i = 0; i < lurun.Items.Count; i++)
                yazilacak += lurun.Items[i]+";"+lmiktar.Items[i]+";"+ltoplam.Items[i]+"\n";

            try
            {
                File.WriteAllText("yazdir.txt", yazilacak);
            }
            catch {
                MessageBox.Show("Dosyaya Yazılamadı!");
            }
        
        }

        ComboBox fiyat = new ComboBox();
        private void bozellik_Click(object sender, EventArgs e)
        {
            fozellik frm = new fozellik(curun,fiyat);
            frm.ShowDialog();
        }
    }
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace ornek1
{
    public partial class fozellik : Form
    {
        ComboBox f1curun, f1fiyat;
        public fozellik(ComboBox c1, ComboBox c2)
        {
            InitializeComponent();
            f1curun = c1;
            f1fiyat = c2;

            for (int i = 0; i < f1curun.Items.Count; i++)
            {
                lurun.Items.Add(f1curun.Items[i]);
                ltutar.Items.Add(f1fiyat.Items[i]);
            }
        }

        private void bekle_Click(object sender, EventArgs e)
        {
            double tutar;

            bool k = Double.TryParse(ttutar.Text,out tutar);

            if (k && turun.Text.Length > 0)
            {
                lurun.Items.Add(turun.Text);
                ltutar.Items.Add(tutar);
                // form 1 gelenler
                f1curun.Items.Add(turun.Text);
                f1fiyat.Items.Add(tutar);

                turun.Clear();
                ttutar.Clear();
            }

        }

        private void bduzenle_Click(object sender, EventArgs e)
        {
            int secilen = lurun.SelectedIndex;
            double tutar;
            bool k = Double.TryParse(ttutar.Text, out tutar);

            if (k && secilen > -1)
            {
                ltutar.Items[secilen] = tutar;
                // form1 den gelen liste guncellemesi
                f1fiyat.Items[secilen] = tutar;
                ttutar.Clear();
            }

        }

        private void bdoku_Click(object sender, EventArgs e)
        {
            lurun.Items.Clear();
            ltutar.Items.Clear();
            // form1 den gelen elemanlar temizlenecek
            f1curun.Items.Clear();
            f1fiyat.Items.Clear();
            try
            {
                string[] satirlar = File.ReadAllLines("urunler.txt");
                string[] ayrac = { ";" };
                for (int i = 0; i < satirlar.Length; i++)
                {
                    string[] sutun = satirlar[i].Split(ayrac, StringSplitOptions.None);

                    if (sutun.Length == 2)
                    {
                        double fiyat;
                        bool k = Double.TryParse(sutun[1], out fiyat);
                        if (k && sutun[0].Length > 0)
                        {
                            lurun.Items.Add(sutun[0]);
                            ltutar.Items.Add(fiyat);
                            // form1 den gelen elemanlarda doldurulacak
                            f1curun.Items.Add(sutun[0]);
                            f1fiyat.Items.Add(fiyat);
                        }
                    }
                
                }
            }
            catch {
                MessageBox.Show("Dosyadan Okunamadı!");
            }

            f1curun.Text = "Seçiniz";
        }

        private void bdyaz_Click(object sender, EventArgs e)
        {
            string yazilacak = "";

            for (int i = 0; i < lurun.Items.Count; i++)
                yazilacak += lurun.Items[i] + ";" + ltutar.Items[i] + "\n";

            try
            {
                File.WriteAllText("urunler.txt",yazilacak);
                MessageBox.Show("Dosya Yazıldı!");
            }
            catch {
                MessageBox.Show("Dosya Yazılamadı!");
            }
        }
    }
}

 

 

GP (Güz-2016) Hafta-12/2

Share