วันอาทิตย์ที่ 22 กันยายน พ.ศ. 2556

การใช้ Control ComboBox ListBox การใช้การตรวจสอบโดย Switch case ในโปรแกรม MS visual studio 2010 (C#)

     สวัสดีทุกท่านที่เข้ามาอ่านโพสนี้นะครับ นี่เป็นโพสแรกของผมหลังจากเรียนการเขียนโปรแกรมโดยใช้ MS visual studio 2010 ซึ่งภาษาที่ผมใช้เขียนนั่นก็คือ C# นั่นเองครับ
เอาหละครับ สำหรับประเดิมบทความแรกเลยก็คือ การใช้ การใช้ Control ComboBox, ListBox ซึ่งจะใช้การใช้การตรวจสอบโดย Switch case รวมถึงการนำเอาเงื่อนไข if มาร่วมด้วยนั่นเองครับ อาจจะฟังดูงงๆ หน่อย สำหรับคนที่ไมาเคยเขียน C# นะครับ สำหรับบทความนี้นั้นผมทำเพื่อเผยแพร่เป็นวิทยาทาน ไม่มีเหตุผลใดๆแอบแฝงทั้งสิ้นนะครับ เอาละครับ ตอนนี้ก็ได้เวลาลงมือแล้วหละครับ หลังจากที่อ่านข้อความที่ผมพล่ามมานาน อิอิ
    อันดับแรกเครื่องของคุณก็จะต้องมีโปรแกรม Microsoft visual studio 2010


    หลังจากเราก็มาลุยกันเลย
สำหรับการเขียนโปรแกรมในครั้งนี้นั้นคุณก็ต้องมีโจทย์ก่อนว่าคุณต้องการที่จำเขียนโปรแกรมเพื่อคำนวณอะไร แต่สำหรับ โพสนี้นั้น ผมได้เตียมโจทย์มาเรียบร้อยแล้วครับ ปล.โจทย์นี้ ได้มาจากอาจารย์อีกทีหนึ่ง อิอิ
     และนี่ก็คือโจทย์นะครับ
ต้องการคำนวณหาราคาสินค้าก่อนหักส่วนลด จำนวนเงินส่วนลด ราคาสินค้าหลังหักส่วนลด จำนวนเงินภาษีมูลค่าเพิ่ม และจำนวนเงินที่ลูกค้าต้องการชำระออกทางจอภาพ โดยใช้ listBox และมีเงื่อนไขของการทำงานดังนี้
- ลูกค้า 1 คนสามารถเลือกซื้อสินค้าได้เพียง 1 ชนิด แต่สามารถชื้อได้มากกว่า 1 ชิ้น
- ประเภทของลูกค้า ให้ใช้ comboBox เพื่อแสดงรายการเลือก โดยแบ่งเป็น 3 ประเภทได้แก่
1. ไม่เป็นสมาชิก
ถ้าซื้อสินค้าไม่เกิน 10,000 บาท จะไม่ได้รับส่วนลด (ให้แสดงค่า 0)
ถ้าซื้อสินค้าไม่เกิน 30,000 บาท จะได้รับส่วนลดในอัตรา 3% ของมูลค่าสินค้า
ถ้าซื้อสินค้าเกิน 30,000 บาท จะได้รับส่วนลดในอัตรา 5% ของมูลค่าสินค้า
2. สมาชิกทั่วไป
ถ้าซื้อสินค้าไม่เกิน 10,000 บาท จะได้รับส่วนลดในอัตรา 3% ของมูลค่าสินค้า
ถ้าซื้อสินค้าไม่เกิน 50,000 บาท จะได้รับส่วนลดในอัตรา 7% ของมูลค่าสินค้า
ถ้าซื้อสินค้าเกิน 50,000 บาท จะได้รับส่วนลดในอัตรา 10% ของมูลค่าสินค้า
3. สมาชิก VIP
จะได้รับส่วนลดในอัตรา 10% ของมูลค่าสินค้า
- การตรวจสอบประเภทของลูกค้า ให้ใช้คำสั่ง switch/case
- การตรวจสอบราคาสินค้า ให้ใช้คำสั่ง if
- สินค้าทุกชนิดมีอัตราภาษีมูลค่าเพิ่ม 7% ของมูลค่าสินค้าหลังหักส่วนลด

หลังจากที่เราเจอโจทย์มาแบบนี้แล้วนะครับ อันดับแรกเลยที่เราจะต้องทำก็คือ การวิเคราะห์โจทย์ สำหรับขั้นตอนนี้ใครที่ไม่ชอบการวิเคราะห์ ก็อาจจะข้ามเขียนโปรแกรมไปเลยก็ได้นะครับ แต่สำหรับนักโปรแกรมเมอร์ที่ดีนั้น เราต้องรอบครอบเอาไว้ก่อน เอาหละครับ ผมว่าเรามาวิเคราะห์โจทย์กันเลยดีกว่า
   
     วิเคราะห์โจทย์
          สิ่งที่โจทย์ต้องการ  
   คำนวณหาราคาสินค้าก่อนหักส่วนลด จำนวนเงินส่วนลด ราคาสินค้าหลังหักส่วนลด จำนวนเงินภาษีมูลค่าเพิ่ม และจำนวนเงินที่ลูกค้าต้องการชำระ
          ข้อมูลออก   
   แสดงราคาสินค้าก่อนหักส่วนลด จำนวนเงินส่วนลด ราคาสินค้าหลังหักส่วนลด จำนวนเงินภาษีมูลค่าเพิ่ม และจำนวนเงินที่ลูกค้าต้องการชำระออกทางจอภาพ
          ข้อมูลเข้า
    รับข้อมูลจำนวนสินค้า, ราคาสินค้า และประเภทลูกค้าจากทางแป้นพิมพ์
          การประมวลผล
1.รับข้อมูลจำนวนสินค้า, ราคาสินค้า และประเภทลูกค้าจากทางแป้นพิมพ์
2.คำนวณหาราคาสินค้ารวม = จำนวนสินค้า * ราคาสินค้า
3.ทำการตรวจสอบว่าลูกค้าเป็นประเภทไหน โดยที่
ถ้าลูกค้าไม่เป็นสมาชิก 
        ถ้าซื้อสินค้าไม่เกิน 10,000 บาท จะไม่ได้รับส่วนลด (ให้แสดงค่า 0)
ถ้าซื้อสินค้าไม่เกิน 30,000 บาท จะได้รับส่วนลดในอัตรา 3% ของมูลค่าสินค้า
ถ้าซื้อสินค้าเกิน 30,000 บาท จะได้รับส่วนลดในอัตรา 5% ของมูลค่าสินค้า
ถ้าลูกค้าเป็นสมาชิกทั่วไป
ถ้าซื้อสินค้าไม่เกิน 10,000 บาท จะได้รับส่วนลดในอัตรา 3% ของมูลค่าสินค้า
ถ้าซื้อสินค้าไม่เกิน 50,000 บาท จะได้รับส่วนลดในอัตรา 7% ของมูลค่าสินค้า
ถ้าซื้อสินค้าเกิน 50,000 บาท จะได้รับส่วนลดในอัตรา 10% ของมูลค่าสินค้า
ถ้าลูกค้าเป็นสมาชิก VIP 
จะได้รับส่วนลดในอัตรา 10% ของมูลค่าสินค้า
4.หลังจากนั้น
            เงินหลังหักส่วนลด = ราคาสินค้ารวม - ส่วนลด
            ภาษีมูลค่าเพิ่ม = เงินหลังหักส่วนลด * 0.07
            จำนวนเงินที่ต้องชำระ = เงินหลังหักส่วนลด + ภาษีมูลค่าเพิ่ม
5.แสดงราคาสินค้าก่อนหักส่วนลด จำนวนเงินส่วนลด ราคาสินค้าหลังหักส่วนลด จำนวนเงินภาษีมูลค่าเพิ่ม และจำนวนเงินที่ลูกค้าต้องการชำระออกทางจอภาพ

เมื่อเราทำการวิเคราะห์โจทยืเป็นที่เรียบร้อยแล้วจากนั้นเราก็มาเริ่มเขียนโปรแกรมกันเลยดีกว่าครับ
     สำหรับบางคนแค่การวิเคราห์อาจจะยังไม่พออาจจะมีการเขียนผังงานหรือซูโดโค๊ดเพิ่มเติมเพื่อความมั่นใจมากขึ้น อันนี้ก็ไม่ขัดศรัทธานะครับ แต่สำหรับผม แค่นี้ก็พอแล้วครับ
   เอาหละครับ เรามาเริ่ม Design Form กันเลยดีกว่า
เริ่มจาก


ทำการเปิดโปรแกรม Microsoft visual studio 2010 ขึ้นมา จากนั้น
1. เลือก New Project...
2. จากนั้น ก็ทำตามขั้นตอนที่ผมกำหนดหมายเลขเอาไว้ คือถ้าเราใช้งาน C# เครื่งมันก็ฟิกให้เราอัตโนมัติเป็น C# และอันแรกที่เป็น Windows Form Application
3.ตรงจุดนี้เราก็ทำการเปลี่ยนชื่อโปรแกรมของเราได้ แต่ตอนเริ่ม โปรเจ๊คก็ถูกฟิกเอาไว้เป็น Windows Form Application1 อีกเช่นกัน
4.จากนั้นทำการกดปุ่ม OK แล้วเราก็จะได้หน้า Form แบบนี้

จากนั้นก็ทำการ Design Form กันเลยคร๊าบบ...

หลังจากที่ดีไซน์ฟอร์มเสร็จเรียบร้อยแล้วก็ทำการกำหนดค่าใน ComboBox ดังนี้
คลิ๊กตรงสามเหลี่ยมเล็กๆ ที่อยู่มุมบนขวาของ ComboBox นั้นๆ จากนั้นเลือก Edit Item... แล้วจะปรากฏหน้าต่าง String Collection Editor ขึ้นมาเราก็ทำการป้อนค่าลงไปในนั้น โดยป้อน 1 ตัวเลือกต่อ 1 แถวในนั้น


หลังจากที่ทำการออกแบบหน้าฟอร์มเสร็จเป็นที่เรียบร้อยแล้ว ก็ถึงเวลาที่ต้องเขียน โค๊ดโปรแกรมกันแล้ว
     ให้ทำการ ดับเบิ้ลคลิ๊กที่ปุ่ม button ที่เราสร้างขึ้นมา 
แล้วก็จะเจอกับหน้าต่าง Form1.cs


ให้เริ่มเขียนโปรแกรมตรงที่ Cersor ปรากฏอยู่ตรงนั้นเลย
 และนี่คือโค๊ดโปรแกรมนี้ครับ

            int ราคาสินค้า = int.Parse(textBox1.Text);
            int จำนวนสินค้า = int.Parse(textBox2.Text);
            double ส่วนลด = 0, เงินหลังหักส่วนลด = 0, ภาษีมูลค่าเพิ่ม = 0, จำนวนเงินที่ต้องชำระ;
            int ราคาสินค้ารวม = ราคาสินค้า * จำนวนสินค้า;
            listBox1.Items.Clear();
            switch (comboBox1.SelectedIndex)
            {
                case 0:

                    if (ราคาสินค้ารวม <= 10000)
                    {
                        ส่วนลด = ราคาสินค้ารวม * ส่วนลด;
                    }
                    else if (ราคาสินค้ารวม <= 30000)
                    {
                        ส่วนลด = ราคาสินค้ารวม * 0.03;
                    }
                    else
                    {
                        ส่วนลด = ราคาสินค้ารวม * 0.05;
                    }
                    break;
                case 1:

                    if (ราคาสินค้ารวม <= 10000)
                    {
                        ส่วนลด = ราคาสินค้ารวม * 0.03;
                    }
                    else if (ราคาสินค้ารวม <= 50000)
                    {
                        ส่วนลด = ราคาสินค้ารวม * 0.07;
                    }
                    else
                    {
                        ส่วนลด = ราคาสินค้ารวม * 0.1;
                    }
                    break;
                default: ส่วนลด = ราคาสินค้ารวม * 0.1; break;
            }
            เงินหลังหักส่วนลด = ราคาสินค้ารวม - ส่วนลด;
            ภาษีมูลค่าเพิ่ม = เงินหลังหักส่วนลด * 0.07;
            จำนวนเงินที่ต้องชำระ = เงินหลังหักส่วนลด + ภาษีมูลค่าเพิ่ม;
            listBox1.Items.Add("จำนวนเงินก่อนหักส่วนลด =" + ราคาสินค้ารวม);
            listBox1.Items.Add("\nจำนวนส่วนลด = " + ส่วนลด);
            listBox1.Items.Add("จำนวนเงินหลังหักส่วนลด = " + เงินหลังหักส่วนลด);
            listBox1.Items.Add("จำนวนเงินที่ต้องชำระ = " + จำนวนเงินที่ต้องชำระ);
ทำการ Coppy โค๊ดทั้งหมดนี้ลงไปที่ Cosor อยู่จากนั้นก็ทำการรันโปรแกรมดูครับ โดยกดปุ่มสามเหลี่ยมสีเขียว หรือ F5 ก็ได้ครับ
แล้วก็จะปรากฏ โปรแกรมที่เราทำไว้ขึ้นมาดังนี้ครับ

จากนั้นลองทำการกรอกข้อมูลลงไป แล้วกดปุ่มคำนวณ ดูนะครับ




ผลการทำงานของโปรแกรมที่เราเขียนขึ้นมาเองครับ สำหรับวันนี้ ก็ขอจบไว้เพียงเท่านี้นะครับ สำหรับใครที่สงสัยตรงไหน ในการเขียนโปรแกรมครั้งนี้ก็คอมเม้นได้นะครับ ส่วนการอธิธิบายการเขียนโปรแกรมอื่นเอาไว้เป็นโพสหน้าแล้วกันนะครับ ขอบคุณที่ติดตามตั้งแต่ต้นจนจบ ของคุณครับ
สอบถามเพิ่มเติมที่ facebook : https://www.facebook.com/natawout.thanata





                         


3 ความคิดเห็น:

  1. ติชมได้นะครับ จะได้เป็นแรงผลักดันให้ผู้เขียน มีกำลังใจขึ้นอีกนิสนุง...

    ตอบลบ
  2. ขอบคุณสำหรับตัวอย่างครับ

    ตอบลบ