• 沒有找到結果。

創見資訊產品資料管理系統

N/A
N/A
Protected

Academic year: 2021

Share "創見資訊產品資料管理系統"

Copied!
37
0
0

加載中.... (立即查看全文)

全文

(1)

報告題目:

創見資訊產品資料管理系統

作者:陳宏銘 系級:工業四甲 學號:D9326700 開課老師:陳亭志 老師 課程名稱:應用程式設計 開課系所:工業工程與系統管理系 開課學年: 96 學年度 第 一 學期

(2)

摘要

現今在科技迅速且蓬勃的發展之下,台灣的資訊業越來越興盛,

高科技產品也隨著被發明及逐漸改良,資訊公司也跟著成台灣不可或

缺的產業之一,因每間公司的產品多樣化,如創見資訊,主要產出為

MP3、記憶卡、隨身碟、行動碟、HD 等等,在管理方面就必須下一

番功夫,所以我使用 Visual Basic 以創見資訊的其中幾件商品為例製

作了一套易於操作的產品資料管理系統,在產品的資料、數量、售價、

成本、圖片等,主要是希望能夠使公司在產品管理上能夠更加簡潔快

速,有效的降低在管理上所需耗費人員、時間成本,增加效率與獲利。

關鍵字:Visual Basic、程式設計、管理系統

(3)

目錄

一、

前言 ………4

二、

方案總管 ………5

三、

Form1 主選單執行畫面及程式碼 ………6

四、

Form2 產品資料維護選單執行畫面及程式碼 …………9

五、

Form3 選擇瀏覽方式執行畫面及程式碼 ………11

六、

Form4 產品資料瀏覽執行畫面及程式碼 ………12

七、

Form5 產品逐筆瀏覽執行畫面及程式碼 ………14

八、

Form6 新增產品資料執行畫面及程式碼 ………18

九、

Form7 產品統計報表執行畫面及程式碼 ………20

十、

Form8 顧客資料維護執行畫面及程式碼 ………33

十一、 Form9 官方網站瀏覽執行畫面及程式碼 ………34

十二、 其他功能簡介 ………36

十三、 心得報告 ………36

(4)

圖目錄

圖一、 方案總管 ………5

圖二、 主程式執行畫面 ………6

圖三、 產品資料維護選單執行畫面 ………9

圖四、 瀏覽方式選單執行畫面 ………11

圖五、 瀏覽產品資料執行畫面 ………12

圖六、 逐筆產品資料瀏覽執行畫面 ………14

圖七、 新增產品資料執行畫面 ………18

圖八、 次數表依售價執行畫面 ………20

圖九、 次數表依成本執行畫面 ………20

圖十、 次數表依庫存量執行畫面 ………20

圖十一、 圓餅圖依售價執行畫面 ………20

圖十二、 圓餅圖依成本執行畫面 ………20

圖十三、 圓餅圖依庫存量執行畫面 ………20

圖十四、 顧客資料維護執行畫面 ………33

圖十五、 官方網站瀏覽執行畫面 ………34

(5)

一、 前言

對於整個系統架構,可得知此系統主要的部分在於其功能性及其

便利性。於是我找了一家記憶卡、記憶體中佔有極大市場的創見資訊

製作其部分產品資料管理系統,此系統包含產品資料(名稱、成本、

售價、庫存量…等)的瀏覽、新增、刪除、修改功能,亦可使用次數

圖及圓餅圖來統計各產品的資料(可依據售價、成本、庫存量作比

較)

,廠商的資料也可以同時作新增及查詢(廠商名稱、訂購產品名

稱、訂購數量),對於產品及顧客資料的控管都能達到功能性及便利

性兼具。

(6)

二、 方案總管

圖一、方案總管 Form1:程式的主選單,與各表單作連結,分為產品資料維護、統計資料報 表、顧客資料維護。 Form2:產品資料維護的功能選單,分為瀏覽產品資料、產品資料新增、產 品資料修改、產品資料刪除。 Form3:選擇瀏覽方式,分為全部瀏覽、逐筆瀏覽兩種方式。 Form4:產品資料以全部產品資料一次瀏覽的方式呈現表單。 Form5:產品資料以逐筆方式瀏覽,表單中亦具有修改、刪除單筆資料的功 能。 Form6:新增產品資料表單,輸入的資料將新增入資料庫裡。 Form7:統計資料報表,分為基本統計、進階統計,基本統計分作依售價、 依成本、依庫存量,以次數表方式呈現,進階統計分作依售價、依 成本、依庫存量,以圓餅圖方式呈現。 Form8:顧客資料維護表單,呈現顧客資料,包括廠商編號、廠商名稱,訂 購商品名稱、訂購數量,可以新增廠商訂單。 From9:官方網站瀏覽器,連結至創見官方網站。 bin\ Debug 裡存放程式所需使用的資源,如圖片、音樂檔等…。 Db1.mdb:產品、顧客資料庫。 Db1DataSet.xsd:供各表單中需要用到的產品、顧客資料與資料庫做連結。

(7)

三、 主選單執行畫面及程式碼

圖二、主程式執行畫面

程式碼:

PublicClass Form1

PrivateSub Form1_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) HandlesMyBase.Load

MsgBox("歡迎使用本系統!", MsgBoxStyle.OkOnly + MsgBoxStyle.Information, "系統訊息") '進入程式時的問候

EndSub

PrivateSub Label2_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label2.Click

MsgBox("感謝您的使用!", MsgBoxStyle.OkOnly +

MsgBoxStyle.Information, "系統訊息") '離開程式時的問候

End

(8)

PrivateSub Form1_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed MsgBox("感謝您的使用!", MsgBoxStyle.OkOnly +

MsgBoxStyle.Information, "系統訊息") '離開程式時問候

EndSub

PrivateSub Timer1_Tick(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Timer1.Tick TextBox1.Text = Now '顯示目前時間

EndSub

PrivateSub Button3_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button3.Click

SelectCase ComboBox1.SelectedItem '音樂選單

Case"捕夢人(潘裕文)" AxWindowsMediaPlayer1.URL = "1.wma" Case"牛仔很忙(周杰倫)" AxWindowsMediaPlayer1.URL = "2.wma" Case"我不配(周杰倫)" AxWindowsMediaPlayer1.URL = "3.wma" Case"不能說的秘密(周杰倫)" AxWindowsMediaPlayer1.URL = "4.wma" Case"當我們宅一起(羅志祥)" AxWindowsMediaPlayer1.URL = "5.wma" Case"我不會唱歌(羅志祥)" AxWindowsMediaPlayer1.URL = "6.wma" Case"我們的歌(王力宏)" AxWindowsMediaPlayer1.URL = "7.wma" Case"大肚腩(阿牛)" AxWindowsMediaPlayer1.URL = "8.wma" EndSelect EndSub

PrivateSub Button4_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button4.Click

AxWindowsMediaPlayer1.close() '關閉音樂

(9)

PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button1.Click

'************************ '從Form1主選單 '→Form2產品資料維護選單 '************************ Form2.Show() '秀出Form2 Me.Hide() '隱藏Form1 EndSub

PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button2.Click

'************************ '從Form1主選單 '→Form7統計資料報表 '************************ Form7.Show() '秀出Form7 Me.Hide() '隱藏Form1 EndSub

PrivateSub Button5_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button5.Click

'************************ '從Form1主選單 '→Form8顧客資料報表 '************************ Form8.Show() '秀出Form8 Me.Hide() '隱藏Form1 EndSub

PrivateSub PictureBox1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles PictureBox1.Click

'************************ '從Form1主選單 '→Form9官方網站 '************************ Form9.Show() '秀出Form9 Me.Hide() '隱藏Form1

(10)

EndSub EndClass

四、 產品資料維護選單執行畫面及程式碼

圖三、產品資料維護選單執行畫面

程式碼:

PublicClass Form2

PrivateSub Label4_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label4.Click

'************************ '從Form2產品資料維護選單 '→Form1主選單 '************************ Form1.Show() '秀出Form1 Me.Close() '關閉Form2 EndSub

PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button1.Click

'************************ '從Form2產品資料維護選單 '→Form3瀏覽方式選單 '************************ Form3.Show() '秀出Form3 Me.Hide() '隱藏Form2

(11)

EndSub

PrivateSub Form2_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

'************************ '表單關閉以後回到Form1 '************************

Form1.Show() '秀出Form1

EndSub

PrivateSub Button3_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button3.Click

'************************ '從Form2產品資料維護選單 '→Form5逐筆方式瀏覽 '************************ Form5.Show() '秀出Form5 Me.Hide() '隱藏Form2 EndSub

PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button2.Click

'************************ '從Form2產品資料維護選單 '→Form6新增產品資料 '************************ Form6.Show() '秀出Form6 Me.Hide() '秀出Form2 EndSub

PrivateSub Button4_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Button4.Click

'************************ '從Form2產品資料維護選單 '→Form5逐筆方式瀏覽 '************************ Form5.Show() '秀出Form5 Me.Hide() '隱藏Form2

(12)

EndSub EndClass

五、 瀏覽方式選單執行畫面及程式碼

圖四、瀏覽方式選單執行畫面

程式碼:

PublicClass Form3

PrivateSub Form3_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

'************************ '表單關閉以後回到Form2 '************************

Form2.Show() '秀出Form2

EndSub

PrivateSub Label4_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label4.Click

'************************ '從Form3瀏覽方式選單 '→Form2產品資料維護選單 '************************ Form2.Show() '秀出Form2 Me.Close() '關閉Form3

(13)

EndSub

PrivateSub Label1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label1.Click

'************************ '從Form3瀏覽方式選單 '→Form4全部瀏覽 '************************ Form4.Show() '秀出Form4 Me.Hide() '隱藏Form3 EndSub

PrivateSub Label2_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label2.Click

'************************ '從Form3瀏覽方式選單 '→Form5逐筆瀏覽 '************************ Form5.Show() '秀出Form5 Me.Hide() '隱藏Form3 EndSub EndClass

六、 產品資料瀏覽執行畫面及程式碼

圖五、瀏覽產品資料執行畫面

(14)

程式碼:

PublicClass Form4

PrivateSub Form4_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

'************************ '表單關閉以後回到Form3 '************************

Form3.Show() '秀出Form3

EndSub

PrivateSub Form4_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) HandlesMyBase.Load

'TODO: 這行程式碼會將資料載入 'Db1DataSet.產品資料表單' 資料表。 您可以視需要進行移動或移除。

Me.產品資料表單TableAdapter.Fill(Me.Db1DataSet.產品資料表單) EndSub

PrivateSub Label1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label1.Click

'************************ '從Form4全部瀏覽 '→Form3瀏覽方式選單 '************************ Form3.Show() '秀出Form3 Me.Close() '關閉Form4 EndSub

PrivateSub Label2_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label2.Click

'************************ '從Form4全部瀏覽 '→Form5逐筆瀏覽 '************************ Form5.Show() '秀出Form5 Me.Hide() '隱藏Form4 EndSub EndClass

(15)

七、 逐筆產品資料瀏覽執行畫面及程式碼

圖六、逐筆產品資料瀏覽執行畫面

程式碼:

PublicClass Form5

Dim 目前資料位置 AsInteger Sub 顯示資料() '以TextBox呈現資料庫資料 TextBox1.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(0) TextBox2.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(1) TextBox3.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(2) TextBox4.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(3) TextBox5.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(4) TextBox6.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(5) TextBox7.Text = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(7) OnErrorResumeNext

PictureBox1.Image = New Bitmap(Me.Db1DataSet.產品資料表單.Rows(目前

(16)

EndSub

PrivateSub Form5_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

'************************ '表單關閉以後回到Form2 '************************

Form2.Show() '秀出Form2

EndSub

PrivateSub Form5_Load(ByVal sender AsObject, ByVal e As System.EventArgs)

HandlesMe.Load Me.產品資料表單TableAdapter.Fill(Me.Db1DataSet.產品資料表單) '表單開 啟即載入資料 目前資料位置 = 0 Call 顯示資料() EndSub

PrivateSub Label12_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label12.Click

'************************ '從Form5逐筆連懶 '→Form2產品資料維護選單 '************************ Form2.Show() '秀出Form2 Me.Close() '關閉Form5 EndSub

PrivateSub Label14_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label14.Click If 目前資料位置 = 0 Then 目前資料位置 = Me.Db1DataSet.產品資料表單.Rows.Count - 1 Else 目前資料位置 -= 1 '回到前一編號產品資料 EndIf Call 顯示資料() EndSub

(17)

PrivateSub Label15_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label15.Click

If 目前資料位置 = Me.Db1DataSet.產品資料表單.Rows.Count - 1 Then 目前資料位置 = 0 Else 目前資料位置 += 1 '回到後一編號產品資料 EndIf Call 顯示資料() EndSub

PrivateSub Label13_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label13.Click

目前資料位置 = 0 '回到第一個產品資料

Call 顯示資料() EndSub

PrivateSub Label16_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label16.Click

目前資料位置 = Me.Db1DataSet.產品資料表單.Rows.Count - 1

Call 顯示資料()'回到最後一個產品資料

EndSub

PrivateSub Label10_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label10.Click

Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(1) = TextBox2.Text Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(2) = TextBox3.Text Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(3) = TextBox4.Text Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(4) = Val(TextBox5.Text) Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(5) = Val(TextBox6.Text) Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(7) = Val(TextBox7.Text) Me.產品資料表單TableAdapter.Update(Me.Db1DataSet.產品資料表單) '修 改後更新資料庫 MsgBox("資料已更新!", , "系統訊息") '更新完畢訊息 EndSub

(18)

PrivateSub Label11_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label11.Click

Dim 產品名稱, 供應商, 單位, 圖片 AsString Dim 進貨成本, 售價 AsSingle Dim 產品編號, 庫存量 AsInteger 產品編號 = Val(TextBox1.Text) 產品名稱 = TextBox2.Text 供應商 = TextBox3.Text 單位 = TextBox4.Text 進貨成本 = Val(TextBox5.Text) 售價 = Val(TextBox6.Text) 庫存量 = Val(TextBox7.Text) 圖片 = Me.Db1DataSet.產品資料表單.Rows(目前資料位置)(6).ToString Me.產品資料表單TableAdapter.Delete(產品編號, 產品名稱, 供應商, 單 位, 進貨成本, 售價, 圖片, 庫存量) Me.產品資料表單TableAdapter.Update(Me.Db1DataSet.產品資料表單) '刪 除後更新資料庫 MsgBox("此筆資料刪除!", , "系統訊息") '刪除完畢訊息 EndSub EndClass

八、 新增產品資料執行畫面及程式碼

(19)

圖七、新增產品資料執行畫面

程式碼:

PublicClass Form6

PrivateSub Label10_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label10.Click

Dim 產品名稱, 供應商, 單位, 圖片 AsString Dim 進貨成本, 售價 AsSingle Dim 庫存量 AsInteger 產品名稱 = TextBox1.Text 供應商 = TextBox2.Text 單位 = TextBox3.Text 進貨成本 = Val(TextBox4.Text) 售價 = Val(TextBox5.Text)

(20)

圖片 = TextBox6.Text 庫存量 = TextBox7.Text If 產品名稱 = ""Or 供應商 = ""Or 單位 = ""Or 進貨成本 = 0 Or 售 價 = 0 Or 圖片 = ""Or 庫存量 = 0 Then MsgBox("有資料尚未填寫!", , "系統訊息") '更新未完畢訊息 Else Me.Db1DataSet.產品資料表單.Add產品資料表單Row(產品名稱, 供 應商, 單位, 進貨成本, 售價, 圖片, 庫存量) Me.產品資料表單TableAdapter.Update(Me.Db1DataSet.產品資料表單) MsgBox("產品資料已新增!", , "系統訊息") '更新完畢訊息 EndIf EndSub

PrivateSub Label11_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label11.Click

'************************ '將TextBox輸入的資料清除 '************************ TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" TextBox4.Text = "" TextBox5.Text = "" TextBox6.Text = "" TextBox7.Text = "" EndSub

PrivateSub Label9_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label9.Click

'************************ '從Form6新增產品 '→Form2產品資料維護選單 '************************ Form2.Show() '秀出Form2 Me.Close() '關閉Form6 EndSub

(21)

System.EventArgs) HandlesMyBase.Load Me.產品資料表單TableAdapter.Fill(Me.Db1DataSet.產品資料表單) '表單開啟即載入資料 EndSub EndClass

九、 產品統計報表執行畫面及程式碼

圖八、次數表依售價執行畫面 圖九、次數表依成本執行畫面 圖十、次數表依庫存量執行畫面 圖十一、圓餅圖依售價執行畫面

(22)

圖十二、圓餅圖依成本執行畫面 圖十三、圓餅圖依庫存量執行畫面 程式碼:

PublicClass Form7

PrivateSub 依售價ToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles 依售價ToolStripMenuItem.Click Dim 數目(10) AsInteger Dim i AsInteger For i = 0 To 9 數目(i) = 0 Next Dim 售價 AsSingle For i = 0 ToMe.Db1DataSet.產品資料表單.Count - 1 售價 = Me.Db1DataSet.產品資料表單.Rows(i)(5) 數目(售價 \ 1000) += 1 '落於次數表哪一階層 Next Dim g As Graphics g = Me.CreateGraphics g.Clear(Me.BackColor) Dim b As Brush b = Brushes.Blue For i = 0 To 9 g.FillRectangle(b, 80, 30 + 20 * i, 數目(i) * 10, 15)

g.DrawString("~" & (i + 1) * 100, New Font("標楷體", 12), b, 10, 30 + 20 * i) '定次數表的階層

(23)

Next g.Dispose() Label2.Text = "" Label3.Text = "" Label4.Text = "" Label5.Text = "" Label6.Text = "" Label7.Text = "" Label8.Text = "" Label9.Text = "" Label10.Text = "" Label11.Text = "" Label12.Text = "" Label13.Text = "" '清除label文字 EndSub

PrivateSub Form7_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

'************************ '表單關閉以後回到Form1 '************************

Form1.Show() '秀出Form1

EndSub

PrivateSub Form7_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) HandlesMyBase.Load

Me.產品資料表單TableAdapter.Fill(Me.Db1DataSet.產品資料表單) EndSub

PrivateSub 依成本ToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles 依成本ToolStripMenuItem.Click Dim 數目(10) AsInteger

Dim i AsInteger

For i = 0 To 9 數目(i) = 0 Next

(24)

Dim 成本 AsSingle For i = 0 ToMe.Db1DataSet.產品資料表單.Count - 1 成本 = Me.Db1DataSet.產品資料表單.Rows(i)(4) 數目(成本 \ 1000) += 1 '落於次數表哪一階層 Next Dim g As Graphics g = Me.CreateGraphics g.Clear(Me.BackColor) Dim b As Brush b = Brushes.Blue For i = 0 To 9 g.FillRectangle(b, 80, 30 + 20 * i, 數目(i) * 10, 15)

g.DrawString("~" & (i + 1) * 100, New Font("標楷體", 12), b, 10, 30 + 20 * i) '定次數表的階層 Next g.Dispose() Label2.Text = "" Label3.Text = "" Label4.Text = "" Label5.Text = "" Label6.Text = "" Label7.Text = "" Label8.Text = "" Label9.Text = "" Label10.Text = "" Label11.Text = "" Label12.Text = "" Label13.Text = "" '清除label文字 EndSub

PrivateSub 依庫存量ToolStripMenuItem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles 依庫存量ToolStripMenuItem.Click Dim 數目(10) AsInteger Dim i AsInteger For i = 0 To 9 數目(i) = 0 Next Dim 庫存量 AsSingle

(25)

For i = 0 ToMe.Db1DataSet.產品資料表單.Count - 1 庫存量 = Me.Db1DataSet.產品資料表單.Rows(i)(7) 數目(庫存量 \ 100) += 1 '落於次數表哪一階層 Next Dim g As Graphics g = Me.CreateGraphics g.Clear(Me.BackColor) Dim b As Brush b = Brushes.Blue For i = 0 To 9 g.FillRectangle(b, 80, 30 + 20 * i, 數目(i) * 10, 15)

g.DrawString("~" & (i + 1) * 100, New Font("標楷體", 12), b, 10, 30 + 20

* i) '定次數表的階層 Next g.Dispose() Label2.Text = "" Label3.Text = "" Label4.Text = "" Label5.Text = "" Label6.Text = "" Label7.Text = "" Label8.Text = "" Label9.Text = "" Label10.Text = "" Label11.Text = "" Label12.Text = "" Label13.Text = "" '清除label文字 EndSub

PrivateSub 列印ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles 列印ToolStripMenuItem.Click PrintDocument1.Print()

EndSub

PrivateSub 依售價ToolStripMenuItem1_Click(ByVal sender As S ystem.Object,

ByVal e As System.EventArgs) Handles 依售價ToolStripMenuItem1.Click

(26)

'定義出刷子顏色

'************************

Dim 紅刷 As Brush = Brushes.Red Dim 綠刷 As Brush = Brushes.Green Dim 藍刷 As Brush = Brushes.Blue Dim 紫刷 As Brush = Brushes.Purple Dim 深綠刷 As Brush = Brushes.DarkGreen Dim 深橘刷 As Brush = Brushes.DarkOrange Dim 黑筆 As Pen = New Pen(Color.Black, 2)

Dim 繪圖區 As Rectangle = New Rectangle(100, 55, 120, 120)

'************************ '定義產品項為數字

'************************

Dim product0 AsInteger

Dim product1 AsInteger

Dim product2 AsInteger

Dim product3 AsInteger

Dim product4 AsInteger

Dim product5 AsInteger

'************************ '定義比率為兩位整數 '************************ Dim 比率0 AsDecimal Dim 比率1 AsDecimal Dim 比率2 AsDecimal Dim 比率3 AsDecimal Dim 比率4 AsDecimal Dim 比率5 AsDecimal

Dim sum AsInteger

product0 = Me.Db1DataSet.產品資料表單.Rows(0)(5) product1 = Me.Db1DataSet.產品資料表單.Rows(1)(5) product2 = Me.Db1DataSet.產品資料表單.Rows(2)(5) product3 = Me.Db1DataSet.產品資料表單.Rows(3)(5) product4 = Me.Db1DataSet.產品資料表單.Rows(4)(5) product5 = Me.Db1DataSet.產品資料表單.Rows(5)(5)

sum = product0 + product1 + product2 + product3 + product4 + product5 比率0 = product0 / sum

(27)

比率2 = product2 / sum 比率3 = product3 / sum 比率4 = product4 / sum 比率5 = product5 / sum '************************ '繪製圓餅圖,依比率構成圓 '************************

Dim g As Graphics = Me.CreateGraphics() g.FillPie(紅刷, 繪圖區, 180, 比率0 * 360) g.DrawPie(黑筆, 繪圖區, 180, 比率0 * 360) g.FillPie(綠刷, 繪圖區, 180 + 比率0 * 360, 比率1 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360, 比率1 * 360) g.FillPie(藍刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360, 比率2 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360, 比率2 * 360) g.FillPie(紫刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360, 比率3 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360, 比率3 * 360) g.FillPie(深綠刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360 + 比率3 * 360, 比率4 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360 + 比率3 * 360, 比率4 * 360) g.FillPie(深橘刷, 繪圖區, 180, -比率5 * 360) g.DrawPie(黑筆, 繪圖區, 180, -比率5 * 360) g.Dispose() '************************ '標示各商品佔總數的比例 '************************ Label2.Text = Me.Db1DataSet.產品資料表單.Rows(0)(1) Label2.ForeColor = Color.Red Label3.Text = Format(比率0, "0.00%") Label4.Text = Me.Db1DataSet.產品資料表單.Rows(1)(1) Label4.ForeColor = Color.Green Label5.Text = Format(比率1, "0.00%") Label6.Text = Me.Db1DataSet.產品資料表單.Rows(2)(1) Label6.ForeColor = Color.Blue Label7.Text = Format(比率2, "0.00%")

(28)

Label8.Text = Me.Db1DataSet.產品資料表單.Rows(3)(1) Label8.ForeColor = Color.Purple Label9.Text = Format(比率3, "0.00%") Label10.Text = Me.Db1DataSet.產品資料表單.Rows(4)(1) Label10.ForeColor = Color.DarkGreen Label11.Text = Format(比率4, "0.00%") Label12.Text = Me.Db1DataSet.產品資料表單.Rows(5)(1) Label12.ForeColor = Color.DarkOrange Label13.Text = Format(比率5, "0.00%") EndSub

PrivateSub 依成本ToolStripMenuItem2_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles 依成本ToolStripMenuItem2.Click

'************************ '定義出刷子顏色

'************************

Dim 紅刷 As Brush = Brushes.Red Dim 綠刷 As Brush = Brushes.Green Dim 藍刷 As Brush = Brushes.Blue Dim 紫刷 As Brush = Brushes.Purple Dim 深綠刷 As Brush = Brushes.DarkGreen Dim 深橘刷 As Brush = Brushes.DarkOrange Dim 黑筆 As Pen = New Pen(Color.Black, 2)

Dim 繪圖區 As Rectangle = New Rectangle(100, 55, 120, 120)

'************************ '定義產品項為數字

'************************

Dim product0 AsInteger

Dim product1 AsInteger

Dim product2 AsInteger

Dim product3 AsInteger

Dim product4 AsInteger

Dim product5 AsInteger

'************************ '定義比率為兩位整數 '************************

Dim 比率0 AsDecimal

(29)

Dim 比率2 AsDecimal

Dim 比率3 AsDecimal

Dim 比率4 AsDecimal

Dim 比率5 AsDecimal

Dim sum AsInteger

product0 = Me.Db1DataSet.產品資料表單.Rows(0)(4) product1 = Me.Db1DataSet.產品資料表單.Rows(1)(4) product2 = Me.Db1DataSet.產品資料表單.Rows(2)(4) product3 = Me.Db1DataSet.產品資料表單.Rows(3)(4) product4 = Me.Db1DataSet.產品資料表單.Rows(4)(4) product5 = Me.Db1DataSet.產品資料表單.Rows(5)(4)

sum = product0 + product1 + product2 + product3 + product4 + product5 比率0 = product0 / sum 比率1 = product1 / sum 比率2 = product2 / sum 比率3 = product3 / sum 比率4 = product4 / sum 比率5 = product5 / sum '************************ '繪製圓餅圖,依比率構成圓 '************************

Dim g As Graphics = Me.CreateGraphics() g.FillPie(紅刷, 繪圖區, 180, 比率0 * 360) g.DrawPie(黑筆, 繪圖區, 180, 比率0 * 360) g.FillPie(綠刷, 繪圖區, 180 + 比率0 * 360, 比率1 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360, 比率1 * 360) g.FillPie(藍刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360, 比率2 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360, 比率2 * 360) g.FillPie(紫刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360, 比率3 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360, 比率3 * 360) g.FillPie(深綠刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360 + 比率3 * 360, 比率4 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360 + 比率3 * 360, 比率4 * 360) g.FillPie(深橘刷, 繪圖區, 180, -比率5 * 360) g.DrawPie(黑筆, 繪圖區, 180, -比率5 * 360)

(30)

g.Dispose() '************************ '標示各商品佔總數的比例 '************************ Label2.Text = Me.Db1DataSet.產品資料表單.Rows(0)(1) Label2.ForeColor = Color.Red Label3.Text = Format(比率0, "0.00%") Label4.Text = Me.Db1DataSet.產品資料表單.Rows(1)(1) Label4.ForeColor = Color.Green Label5.Text = Format(比率1, "0.00%") Label6.Text = Me.Db1DataSet.產品資料表單.Rows(2)(1) Label6.ForeColor = Color.Blue Label7.Text = Format(比率2, "0.00%") Label8.Text = Me.Db1DataSet.產品資料表單.Rows(3)(1) Label8.ForeColor = Color.Purple Label9.Text = Format(比率3, "0.00%") Label10.Text = Me.Db1DataSet.產品資料表單.Rows(4)(1) Label10.ForeColor = Color.DarkGreen Label11.Text = Format(比率4, "0.00%") Label12.Text = Me.Db1DataSet.產品資料表單.Rows(5)(1) Label12.ForeColor = Color.DarkOrange Label13.Text = Format(比率5, "0.00%") EndSub

PrivateSub Label1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label1.Click Form1.Show()

Me.Close() EndSub

PrivateSub 依庫存量ToolStripMenuItem1_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles 依庫存量ToolStripMenuItem1.Click

'************************ '定義出刷子顏色

'************************

Dim 紅刷 As Brush = Brushes.Red Dim 綠刷 As Brush = Brushes.Green Dim 藍刷 As Brush = Brushes.Blue

(31)

Dim 紫刷 As Brush = Brushes.Purple Dim 深綠刷 As Brush = Brushes.DarkGreen Dim 深橘刷 As Brush = Brushes.DarkOrange Dim 黑筆 As Pen = New Pen(Color.Black, 2)

Dim 繪圖區 As Rectangle = New Rectangle(100, 55, 120, 120)

'************************ '定義產品項為數字

'************************

Dim product0 AsInteger

Dim product1 AsInteger

Dim product2 AsInteger

Dim product3 AsInteger

Dim product4 AsInteger

Dim product5 AsInteger

'************************ '定義比率為兩位整數 '************************ Dim 比率0 AsDecimal Dim 比率1 AsDecimal Dim 比率2 AsDecimal Dim 比率3 AsDecimal Dim 比率4 AsDecimal Dim 比率5 AsDecimal

Dim sum AsInteger

product0 = Me.Db1DataSet.產品資料表單.Rows(0)(7) product1 = Me.Db1DataSet.產品資料表單.Rows(1)(7) product2 = Me.Db1DataSet.產品資料表單.Rows(2)(7) product3 = Me.Db1DataSet.產品資料表單.Rows(3)(7) product4 = Me.Db1DataSet.產品資料表單.Rows(4)(7) product5 = Me.Db1DataSet.產品資料表單.Rows(5)(7)

sum = product0 + product1 + product2 + product3 + product4 + product5 比率0 = product0 / sum 比率1 = product1 / sum 比率2 = product2 / sum 比率3 = product3 / sum 比率4 = product4 / sum 比率5 = product5 / sum '************************

(32)

'繪製圓餅圖,依比率構成圓 '************************

Dim g As Graphics = Me.CreateGraphics() g.FillPie(紅刷, 繪圖區, 180, 比率0 * 360) g.DrawPie(黑筆, 繪圖區, 180, 比率0 * 360) g.FillPie(綠刷, 繪圖區, 180 + 比率0 * 360, 比率1 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360, 比率1 * 360) g.FillPie(藍刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360, 比率2 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360, 比率2 * 360) g.FillPie(紫刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360, 比率3 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360, 比率3 * 360) g.FillPie(深綠刷, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360 + 比率3 * 360, 比率4 * 360) g.DrawPie(黑筆, 繪圖區, 180 + 比率0 * 360 + 比率1 * 360 + 比率2 * 360 + 比率3 * 360, 比率4 * 360) g.FillPie(深橘刷, 繪圖區, 180, -比率5 * 360) g.DrawPie(黑筆, 繪圖區, 180, -比率5 * 360) g.Dispose() '************************ '標示各商品佔總數的比例 '************************ Label2.Text = Me.Db1DataSet.產品資料表單.Rows(0)(1) Label2.ForeColor = Color.Red Label3.Text = Format(比率0, "0.00%") Label4.Text = Me.Db1DataSet.產品資料表單.Rows(1)(1) Label4.ForeColor = Color.Green Label5.Text = Format(比率1, "0.00%") Label6.Text = Me.Db1DataSet.產品資料表單.Rows(2)(1) Label6.ForeColor = Color.Blue Label7.Text = Format(比率2, "0.00%") Label8.Text = Me.Db1DataSet.產品資料表單.Rows(3)(1) Label8.ForeColor = Color.Purple Label9.Text = Format(比率3, "0.00%") Label10.Text = Me.Db1DataSet.產品資料表單.Rows(4)(1)

(33)

Label10.ForeColor = Color.DarkGreen Label11.Text = Format(比率4, "0.00%") Label12.Text = Me.Db1DataSet.產品資料表單.Rows(5)(1) Label12.ForeColor = Color.DarkOrange Label13.Text = Format(比率5, "0.00%") EndSub EndClass

十、 顧客資料維護執行畫面及程式碼

(34)

圖十四、顧客資料維護執行畫面

程式碼:

PublicClass Form8

PrivateSub Form8_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

'************************ '表單關閉以後回到Form1 '************************

Form1.Show() '秀出Form1

EndSub

PrivateSub Form8_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) HandlesMyBase.Load

'TODO: 這行程式碼會將資料載入 'Db1DataSet.顧客資料表單' 資料表。 您可以視需要進行移動或移除。

Me.顧客資料表單TableAdapter.Fill(Me.Db1DataSet.顧客資料表單) EndSub

PrivateSub Label1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label1.Click

'************************ '從Form8顧客資料維護 '→Form1主選單 '************************ Form1.Show() '秀出Form1 Me.Close() '關閉Form8 EndSub

PrivateSub Label2_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label2.Click

Dim 廠商名稱, 訂購產品名稱 AsString Dim 訂購數量 AsInteger 廠商名稱 = TextBox2.Text 訂購產品名稱 = TextBox3.Text 訂購數量 = TextBox4.Text Me.Db1DataSet.顧客資料表單.Add顧客資料表單Row(廠商名稱, 訂購產 品名稱, 訂購數量)

(35)

Me.顧客資料表單TableAdapter.Update(Me.Db1DataSet.顧客資料表單) '新 增後更新資料庫 MsgBox("廠商資料已新增!", , "系統訊息") '新增完畢訊息 EndSub EndClass

十一、 官方網站瀏覽執行畫面及程式碼

圖十五、官方網站瀏覽執行畫面 程式碼:

PublicClass Form9

PrivateSub Label1_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Label1.Click

'************************ '從Form9官方網站連結 '→Form1主選單 '************************ Form1.Show() '秀出Form1 Me.Close() '關閉Form9 EndSub

PrivateSub Form9_FormClosed(ByVal sender AsObject, ByVal e As

System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed

(36)

'表單關閉以後回到Form1 '************************

Form1.Show()'秀出Form1

EndSub

PrivateSub Form9_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) HandlesMyBase.Load

'************************ '瀏覽器連結至網址 '************************ WebBrowser1.Navigate("http://shop.transcend.com.tw/") EndSub EndClass

十二、 其他功能簡介

在主選單中,我使用了 Windowsmedia 元件取代程

式中內建的音樂撥放程式,原因是內建的撥放程式碼

只可播放 wav 檔案的音樂檔,但 wav 檔案的相當大,

在系統啟用時會影響到運作的速度,因此程式中的音

樂檔我轉換為 wma 檔使檔案大小由 wav 檔的 40mb 降到 wma 檔的

3mb,並使用 ComboBox 讓使用者可以做音樂的選擇,讓使用者在使

(37)

十三、 心得報告

從這學期開始接觸到 Visual Basic 2005,與其他程式不一樣的是

VB 的基本操作方法並不像 C 語言一樣,完全在於程式碼上面操作、

更改程式,而是直接針對程式的版面作更改,因此對於操作上面可以

說是相當得心應手。這程式是我做的第二個程式,內容及功能上尚嫌

簡略,還有很多可以加強的部分,希望以後能對 VB 繼續鑽研,繼續

學習更進階的程式碼。

參考文獻

相關文件

二、本校於報名表中對於學生資料之蒐集,係為學生成績計算、資料整理及報 到作業等招生作業之必要程序,並作為後續資料統計及學生報到註冊作業

利用 Microsoft Access 資料庫管理軟體,在 PC Windows 作業系 統環境下,將給與的紙本或電子檔(如 excel

利用 Microsoft Access 資料庫管理軟體,在 PC Windows 作業系統環境 下,將給與的紙本或電子檔(如 excel

對外商品貿易指數的資料是源於進出口貨物准照及申報單的資料,而有關指數主要包括:價值指

 為了更進一步的提升與改善本校資訊管理系 的服務品質,我們以統計量化的方式,建立

( )如圖為自民國 79 年到 88 年臺灣地區每人每年平均用紙量(kg)折線圖,請問哪一年間,每

上列兩個範例是屬於連續型資料相同,但是組距不相同,比較看看,統計圖表有

操作流程: 系統選單->財產管理系統->點選報廢申請單->填寫報廢申請單資料(主 單、明細)->點選確認