1 / 30

題目:管家租貸系統

題目:管家租貸系統. 南台科技大學 機械工程系 奈米一乙 學號: 4A014059 姓名:杜弘翔. 學習重點. 學習重點: TextBox 、 ListBox 、 RadioButton 、 CheckBox 的使用方法 Now() 的使用方法 If...them...Else 選擇結構的使用方法. 題目說明:系統結帳. 當填寫完租借日期與數量後,按下計算鈕,即會顯示結帳總金額。 按「清除」按鈕,再輸入數量,並點選「老客戶* 0.9 」,再按下「計算」鈕,得到打 9 折後的那一筆總金額資料。. 附加練習.

Télécharger la présentation

題目:管家租貸系統

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 題目:管家租貸系統 南台科技大學 機械工程系 奈米一乙 學號:4A014059 姓名:杜弘翔

  2. 學習重點 • 學習重點: • TextBox、ListBox 、 RadioButton、CheckBox的使用方法 • Now()的使用方法 • If...them...Else 選擇結構的使用方法

  3. 題目說明:系統結帳 • 當填寫完租借日期與數量後,按下計算鈕,即會顯示結帳總金額。 • 按「清除」按鈕,再輸入數量,並點選「老客戶*0.9」,再按下「計算」鈕,得到打9折後的那一筆總金額資料。

  4. 附加練習 • 當總金額達到10000元時,即會開放「滿10000(75折)」的選項,並自動以此折價計算折價後的金額。         當滿1000時...

  5. 表單(form)設計 Label22 Label23 Label24 Label25

  6. 表單(form)設計 Label26 Label2 Label13 Label14 Label15 Label16 Label17 Label18 Label3 Label19 Label20 Label21 Label1 Label4 Label5 Label6 txtHKA txtHKB txtHKC Label7 Label8 Label9 txtHAY txtHBY txtHCY Label10 Label11 Label12 txtHAM txtHBM txtHCM txtHAD txtHBD txtHCD txtHAA txtHBB txtHCC rdbold rdbsp rdben

  7. 表單(form)設計 txtlist lblmoney lblnext btncount btnclear

  8. 程式碼設計 1.Public Class Form1 2.Dim amount, addamount As Integer 3.Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 4.txtHKA.Enabled= False 5.txtHKB.Enabled= False 6.txtHKC.Enabled= False 7.Label26.Text = “基準日期:" & Format(Now(), "yyyy/MM/dd")

  9. 程式碼設計 8.txtHAY.Text= Format(Now(), "yyyy") 9.txtHBY.Text= Format(Now(), "yyyy") 10. txtHCY.Text = Format(Now(), "yyyy") 11.txtHAM.Text = Format(Now(), "MM") 12.txtHBM.Text = Format(Now(), "MM") 13. txtHCM.Text = Format(Now(), "MM") 14. txtHAD.Text = Format(Now(), "dd") 15. txtHBD.Text = Format(Now(), "dd") 16. txtHCD.Text = Format(Now(), "dd") 17.rdben.Enabled = False 18.End Sub

  10. 程式碼設計 19.Private Sub btncount_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btncount.Click 20.Dim HA, HA1, HB, HB1, HC, HC1 As Integer 21.HA1 = Val(Format(Now(), "yyyy") - txtHAY.Text) * 365 + Val(Format(Now(), "MM") - txtHAM.Text) * 30 + Val(Format(Now(), "dd") - txtHAD.Text) 22. HB1 = Val(Format(Now(), "yyyy") - txtHBY.Text) * 365 + Val(Format(Now(), "MM") - txtHBM.Text) * 30 + Val(Format(Now(), "dd") - txtHBD.Text) 23. HC1 = Val(Format(Now(), "yyyy") - txtHCY.Text) * 365 + Val(Format(Now(), "MM") - txtHCM.Text) * 30 + Val(Format(Now(), "dd") - txtHCD.Text)

  11. 程式碼設計 24.If HA1 < 0 Then 25.HA1 = -HA1 26. Else 27.HA1 = HA1 28. End If 29. If HB1 < 0 Then 30.HB1 = -HB1 31. Else 32.HB1 = HB1 33. End If

  12. 程式碼設計 34.If HC1 < 0 Then 35.HC1 = -HC1 36. Else 37. HC1 = HC1 38. End If 39. HA = Val(txtHKA.Text) * HA1 * Val(txtHAA.Text) 40. HB = Val(txtHKB.Text) * HB1 * Val(txtHBA.Text) 41. HC = Val(txtHKC.Text) * HC1 * Val(txtHCA.Text) 42. amount = HA + HB + HC

  13. 程式碼設計 43.If rdbold.Checked = True Then 44.amount *= 0.9 45. ElseIfrdbsp.Checked = True Then 46. amount *= 0.8 47. ElseIf amount >= 10000 Then 48. rdben.Enabled = True 49. rdben.Checked = True 50. amount *= 0.75

  14. 程式碼設計 51.ElseIfamount < 10000 Then 52.rdben.Enabled = False 53. rdben.Checked = False 54. amount *= 1 55.Else 56. amount *= 1 57. End If

  15. 程式碼設計 58.lblmoeny.Text= "金額:" & amount & "元﹐" 59.addamount= addamount + amount 60. lblnext.Text = "累計:" & addamount & "元﹐" 61. txtHAY.Focus() 62.Dim show As String 63.show = “產品” & vbTab & “價格” & vbTab & vbTab & “期限" & vbTab & vbTab & vbTab & "數量" & vbNewLine 64.show &= “管家A” & vbTab & txtHKA.Text & “天/元” & vbTab & txtHAY.Text & “年” & vbTab & txtHAM.Text & “月” & vbTab & txtHAD.Text & “日" & vbTab & txtHAA.Text & "位" & vbNewLine

  16. 程式碼設計 65.show &= “管家B” & vbTab & txtHKB.Text & “天/元﹐” & vbTab & txtHBY.Text & “年” & vbTab & txtHBM.Text & “月” & vbTab & txtHBD.Text & “日” & vbTab & txtHBA.Text & “位" & vbNewLine 66.show &= “管家C” & vbTab & txtHKC.Text & “天/元﹐” & vbTab & txtHCY.Text & “年” & vbTab & txtHCM.Text & “月” & vbTab & txtHCD.Text & “日” & vbTab & txtHCA.Text & “位" & vbNewLine 67.show &= IIf(rdbold.Checked = True, “老客戶(9折)”, “”) & IIf(rdbsp.Checked = True, “特殊戶a (8折)”, “”) & IIf(rdben.Checked = True, “滿10000 (75折)", "") & vbNewLine 68.show &= “小計" & amount & "元﹐"

  17. 69.txtlist.TabStop= False 70.txtlist.Text= show 71.End Sub 72.Private Sub btnclear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnclear.Click 73.txtHAY.Text = Format(Now(), "yyyy") 74. txtHBY.Text = Format(Now(), "yyyy") 75. txtHCY.Text = Format(Now(), "yyyy") 76.txtHAM.Text= Format(Now(), "MM") 77. txtHBM.Text = Format(Now(), "MM") 78. txtHCM.Text = Format(Now(), "MM")

  18. 程式碼設計 79.txtHAD.Text= Format(Now(), "dd") 80 . txtHBD.Text = Format(Now(), "dd") 81. txtHCD.Text = Format(Now(), "dd") 82. txtHAA.Text = "0" 83. txtHBA.Text = "0" 84. txtHCA.Text = "0" 85. lblmoeny.Text = “金額:0元﹐" 86. txtlist.Text = ""

  19. 程式碼設計 87.rdbold.Checked = False 88. rdbsp.Checked = False 89. rdben.Checked = False 90. rdben.Enabled = False 91.End Sub 92.End Class

  20. 程式說明 • 第2行 定義amount 、accamount為整數變數 • 第4~6行 使 [管家A]、[管家B]、[管家C] 無效 • 第7行 顯示當天的年、月、日 • 第8~10行 顯示現在的年份 • 第11~13行 顯示現在的月份 • 第14~16行 顯示現在的日子 • 第17行 使 [滿10000(75折)] 按鈕無效 • 第20行 定義HA, HA1, HB, HB1, HC, HC1為整數變數

  21. 程式說明 • 第21行 [管家A租貸天數] (HA1) 等於 現在的年份 減掉 租貸的終止年份 乘 365天 加 現在的月份減掉 租貸的終止月份 乘 30天 加 現在的日子減掉 租貸的終止日子 • 第22行 [管家B租貸天數] (HB1) 等於 現在的年份 減掉 租貸的終止年份 乘 365天 加 現在的月份 減掉 租貸的終止月份 乘 30天 加 現在的日子 減掉 租貸的終止日子 • 第23行 [管家C租貸天數] (HC1) 等於 現在的年份 減掉 租貸的終止年份 乘 365天 加 現在的月份 減掉 租貸的終止月份 乘 30天 加 現在的日子 減掉 租貸的終止日子

  22. 程式說明 • 第24~28行 假如 HA1 為負數時(因日期必須為正數),HA1=-HA1(負負得正);其他 HA1 為正數時, HA1=HA1(沒有改變)。 • 第29~33行 假如 HB1為負數時, HB1=-HB1;其他 HB1為正數時, HB1=HB1。 • 第34~38行 假如 HC1為負數時, HC1=-HC1;其他 HC1為正數時, HC1=HC1。 • 第39行 [管家A的租貸金額](HA) 等於 管家的價錢 乘 [管家A的租貸天數](HA1) 乘 [管家A的數量]。 • 第40行 [管家B的租貸金額](HB)等於 管家的價錢 乘 [管家B的租貸天數](HB1)乘 [管家B的數量]。

  23. 程式說明 • 第41行 [管家C的租貸金額](HC)等於 管家的價錢 乘 [管家C的租貸天數](HC1) 乘 [管家C的數量]。 • 第42行 [全部的租貸價錢](amount) 等於 [管家A的租貸金額](HA) 加 [管家B的租貸金額](HB) 加 [管家C的租貸金額](HC) • 第43~44行 假如[老客戶(9折)]的選項被勾選時,[全部的租貸價錢](amount) 乘 0.9 • 第45~46行 其他假如[特約戶(8折)]的選項被勾選時,[全部的租貸價錢](amount) 乘 0.8 • 第47~50行 其他假如[全部的租貸價錢](amount)>10000時,[全部的租貸價錢](amount) 乘 0.75,還有[滿10000(75折)]的選項被啟用和勾選。

  24. 程式說明 • 第51~54行 其他假如[全部的租貸價錢](amount)<10000時,則[全部的租貸價錢](amount) 乘 1(不變),還有[滿10000(75折)]的選項不被啟用和勾選。 • 第55~57行 其他 [全部的租貸價錢](amount) 乘 1(不變) • 第58行 顯示[金額:" & amount & "元] • 第59行 [累計總金額](addamount) 等於 [上一次的總金額] 加 [這一次的總金額]。 • 第60行 顯示[累計:" & addamount & "元] • 第61行 游標駐點在[管家A的年份]上

  25. 程式說明 • 第62行 宣告(show)為字串 • 第63~68行 顯示你選擇後的資料,包括類別、價錢、租貸日期、數量、優惠。 • 第69行 設定此控制項沒有駐停點 • 第70行 顯示(show)的結果 • 第73~75行 回到現在的年份 • 第76~78行 回到現在的月份 • 第79~81行 回到現在的日子 • 第82~84行 數量變回0

  26. 程式說明 • 第85行 顯示[金額:0元] • 第86行 顯示空白 • 第87行 [老客戶(9折)]的勾選狀態回到尚未勾選 • 第88行 [特約戶(8折)]的勾選狀態回到尚未勾選 • 第89行 [滿10000(75折)]的勾選狀態回到尚未勾選 • 第90行 使 [滿10000(75折)] 按鈕無效 • 第91~92行 程式結束

  27. 實際展示程式

  28. 心得感言 • 因為我曾經接觸過C++過的經驗,所以Visual Basic對我來說簡單很多,因為他不像C++全部的程式都必須一個字一個字打不像VB有圖像顯示的功能,讓我們設計起來相當得容易。 • 在設計程式的過程中碰到些許的問題,像是If...them...Else執行錯誤、宣告物件不對等,但最後經過自己不斷的嘗試與思考、請教老師後,逐一得化解掉危機,但也讓我深刻的體會VB的趣味。

  29. 參考文獻 • Visual Basic 2010 基礎必修課 林義証、蔡文龍、張傑瑞、何叡 著 吳明哲 策劃 碁峰出版社

  30.  報告完畢 謝謝各位

More Related