520324-Visual Basic: การเขียนโปรแกรมสั่งซื้อสินค้า

04/10/2012 9:34 PM Study 5,300 views

Visual Basic: การเขียนโปรแกรมสั่งซื้อสินค้า

           สำหรับงานชิ้นที่สองเกี่ยวกับโปรแกรมการคำนวณราคารวมของสินค้าที่ผู้ใช้เลือก ในโปรแกรมประกอบด้วยสินค้าต่างๆ ได้แก่ คอมพิวเตอร์ RAM  Hardisk  และ  Bluray Disk เมื่อผู้ใช้เลือกรุ่นคอมพิวเตอร์จะแสดงราคาในช่องด้านหลังและแสดงรูปช่องบนซ้าย ถ้าเลือก RAM จะแสดงราคาตามขนาดของ RAM (1 GB, 2GB, 4GB) และแสดงรูปช่องบนขวา

ถ้าเลือก External Hardisk จะแสดงราคาของสินค้าและรูปในช่องล่างซ้าย ถ้าเลือก Bluray Disk จะแสดงราคาและรูปในช่องล่างขวา เมื่อผู้ใช้ยกเลิกการเลือกสินค้าใดๆ ราคาและรูปภาพก็จะหายไป เมื่อกดปุ่มคำนวณโปรแกรมจะรวมราคาสินค้าทั้งหมดที่เลือกและแสดงในช่อง รวม และรวมที่เพิ่มภาษีอีก 7% เมื่อกดปุ่มล้างข้อมูลจะทำการล้างค่าทั้งหมดเหมือนกับเริ่มต้นทำงานใหม่

 

User Interface ของโปรแกรม

                หน้าตาของโปรแกรมออกแบบให้เหมาะสมและสามารถกำหนดรูปแบบการแสดงผลได้ตรงส่วนของ Probpaties โดยจะจำแนกการกำหนดค่าของแต่ละปุ่มไว้ดังนี้

ช่องเลือกรุ่นคอมพิวเตอร์ :
Name : ComboNote
Text : ———เลือกรุ่นคอมพิวเตอร์———-
Item : ใส่รายการคอมพิวเตอร์ที่ต้องการ เช่น

Acer
Apple
Asus
Dell
HP
Lenovo
MSI
Samsung
Sony
Toshiba

ตัวเลือก RAM :
Name : CheckRam

ตัวเลือกย่อยของ RAM  :
Name : rad1, rad2, rad4  ตามลำดับ (ขนาดของ RAM)

ตัวเลือก External Hardisk :
Name : CheckHD

ตัวเลือก Bluray Disk :
Name : CheckDisk

ช่องราคาคอมพิวเตอร์ :
Name : PriceNote

ช่องราคา RAM :
Name : PriceRam

ช่องราคา External Hardisk :
Name : PriceHD

ช่องราคา Bluray disk :
Name : PriceBD

ช่องรวมและรวม 7% :
Name : Total และ Total2 ตามลำดับ

ส่วนแสดงรูปภาพ :
Name : PicNote, PicNote, PicRam, PicHD, PicBD ตามลำดับ

 

Code ของโปรแกรม

         เมื่อออกแบบหน้าตาของโปรแกรมและกำหนดชื่อให้แต่ละปุ่มแล้วจะเขียนคำสั่งให้โปรแกรมทำงาน  โดย Double Click ปุ่มนั้นเพื่อใส่ Code ดังนี้

กำหนดราคาคอมพิวเตอร์ของแต่ละยี่ห้อ ไว้ในส่วนของ class

Public sum, tax, net, HD, BD, Ram As String
Public Acer As String = 19900
Public Apple As String = 32900
Public Asus As String = 19900
Public Dell As String = 19900
Public Hp As String = 21900
Public Lenovo As String = 21900
Public MSI As String = 21290
Public Samsung As String = 21900
Public Sony As String = 23900
Public Toshiba As String = 22900

/*  ตั้งชื่อตัวแปลตามยี่ห้อคอมพิวเตอร์และกำหนดราคา  ข้อมูลวันที่  19.09.2012 www.notebookspec.com */

รายการคอมพิวเตอร์

Private Sub ComboNote_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboNote.SelectedIndexChanged
Select Case ComboNote.SelectedItem.ToString
Case “Acer”
PicNote.ImageLocation = Application.StartupPath & “\Acer.jpg”
PriceNote.Text = Acer
Exit Select
Case “Apple”
PicNote.ImageLocation = Application.StartupPath & “\Apple.jpg”
PriceNote.Text = Apple
Exit Select
Case “Asus”
PicNote.ImageLocation = Application.StartupPath & “\Asus.jpg”
PriceNote.Text = Asus
Exit Select
Case “Dell”
PicNote.ImageLocation = Application.StartupPath & “\Dell.jpg”
PriceNote.Text = Dell
Exit Select
Case “HP”
PicNote.ImageLocation = Application.StartupPath & “\Hp.jpg”
PriceNote.Text = Hp
Exit Select
Case “Lenovo”
PicNote.ImageLocation = Application.StartupPath & “\Lenovo.jpg”
PriceNote.Text = Lenovo
Exit Select
Case “MSI”
PicNote.ImageLocation = Application.StartupPath & “\MSI.jpg”
PriceNote.Text = MSI
Exit Select
Case “Samsung”
PicNote.ImageLocation = Application.StartupPath & “\Samsung.jpg”
PriceNote.Text = Samsung
Exit Select
Case “Sony”
PicNote.ImageLocation = Application.StartupPath & “\Sony.jpg”
PriceNote.Text = Sony
Exit Select
Case “Toshiba”
PicNote.ImageLocation = Application.StartupPath & “\Toshiba.jpg”
PriceNote.Text = Toshiba
Exit Select

End Select

End Sub

/*  ตัวอย่าง
Case “Acer”
PicNote.ImageLocation = Application.StartupPath & “\Acer.jpg”
PriceNote.Text = Acer
Exit Select
เมื่อเลือกคอมพิวเตอร์ยี่ห้อ Acer จะแสดงรูปภาพคอมพิวเตอร์รุ่นนั้นในตำแหน่ง PicNote โดยต้องเก็บรูปภาพไว้ในที่อยู่ของ My Doc/Visual Studio/Project/”project name”/bin/debug  เพื่อให้โปรแกรมเรียกมาแสดงได้ และคำสั่ง PriceNote.Text จะกำหนดราคาของคอมพิวเตอร์ในช่อง PriceNote  
*/

รายการ RAM

Private Sub CheckRam_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckRam.CheckedChanged
If CheckRam.Checked = True Then
PicRam.ImageLocation = Application.StartupPath & “\Ram.jpg”
Else
PicRam.ImageLocation = Application.StartupPath & “”
PriceRam.Text = “”
End If
End Sub

/* เมื่อผู้ใช้เลือก RAM (เช็คถูก) โปรแกรมจะแสดงรูปภาพของ RAM จากคำสั่ง PicRam.ImageLocation = Application.StartupPath & “\Ram.jpg”  และถ้ายกเลิก (เอาเครื่องหมายเช็คถูกออก) รูปภาพก็จะหายไป   */

รายการย่อย ขนาดของ RAM 

Private Sub rad1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad1.CheckedChanged
If rad1.Checked = True Then
PicRam.ImageLocation = Application.StartupPath & “\Ram.jpg”
PriceRam.Text = “280”
End If
End Sub

Private Sub rad2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad2.CheckedChanged
If rad2.Checked = True Then
PicRam.ImageLocation = Application.StartupPath & “\Ram.jpg”
PriceRam.Text = “360”
End If
End Sub

Private Sub rad4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad4.CheckedChanged
If rad4.Checked = True Then
PicRam.ImageLocation = Application.StartupPath & “\Ram.jpg”
PriceRam.Text = “610”
End If
End Sub
/* เมื่อผู้ใช้เลือกในรายการย่อยของ RAM จะแสดงรูปภาพเหมือนเลือกรายการหลัก และจะแสดงราคาของ RAM ในแต่ละขนาดในช่อง  PriceRam ซึ่งผู้เขียนขอเอาคำสั่งของแต่ละปุ่มมารวมไว้ที่เดียว เวลานำไปใช้ต้องกำหนดแยกกันโดย Double Click และกำหนดและใส่ code ให้ถูกต้อง  */

รายการ External Hardisk

Private Sub CheckHD_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckHD.CheckedChanged
If CheckHD.Checked = True Then
PicHD.ImageLocation = Application.StartupPath & “\HD.jpg”
PriceHD.Text = “3290”
Else
PicHD.ImageLocation = Application.StartupPath & “”
PriceHD.Text = “”
End If
End Sub

/*  เมื่อผู้ใช้เลือกจะแสดงราคาและรูปภาพของ External Hardisk และถ้ายกเลิกราคาและรูปภาพจะหายไป */

รายการ Bluray Harddisk

Private Sub CheckDisk_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckDisk.CheckedChanged
If CheckDisk.Checked = True Then
PicBD.ImageLocation = Application.StartupPath & “\BD.jpg”
PriceBD.Text = “120”
Else
PicBD.ImageLocation = Application.StartupPath & “”
PriceBD.Text = “”
End If
End Sub

/*  เมื่อผู้ใช้เลือกจะแสดงราคาและรูปภาพของ Bluray Hardisk และถ้ายกเลิกราคาและรูปภาพจะหายไป */

ปุ่มคำนวณ

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sum, PN, PR, PHD, PBD As Single
PN = Val(PriceNote.Text)
PR = Val(PriceRam.Text)
PHD = Val(PriceHD.Text)
PBD = Val(PriceBD.Text)
sum = PN + PR + PHD + PBD
Total.Text = Format(sum, “”)
tax = sum * 0.07
net = tax + sum
Total2.Text = net
End Sub

/* กำหนดตัวแปรให้กับค่าของราคาสินค้าแต่ละชนิด จากนั้นรวมราคาทั้งหมดและให้ไปแสดงที่ช่อง Total.Text = Format(sum, “”) แล้วนำราคารวมทั้งหมดมาคิดภาษาอีก 7 % และนำไปแสดงที่ชื่อ Total2.Text = net */

ปุ่มล้างข้อมูล

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
PriceNote.Clear()
PriceRam.Clear()
PriceHD.Clear()
PriceBD.Clear()
Total.Clear()
Total2.Clear()

CheckRam.Checked = False
CheckHD.Checked = False
CheckDisk.Checked = False

rad1.Checked = False
rad2.Checked = False
rad4.Checked = False

PicNote.ImageLocation = Application.StartupPath & “”
End Sub

/* เมื่อกดปุ่มนี้จะล้างข้อมูลในแต่ละช่อง เช่น PriceNote.Clear() เครื่องหมายเช็คถูก เช่น CheckRam.Checked = False และรูปภาพที่แสดง เช่น PicNote.ImageLocation = Application.StartupPath & “”  แต่ละช่องจะว่างเหมือนเริ่มต้นโปรแกรมใหม่ */

ปุ่มออก

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
End Sub

/* จบการทำงานและออกจากโปรแกรม */

19/09/2012


, , , ,