<4D F736F F D20C0B3A5CEB57BA6A1B35DAD70B4C1A5BDB3F8A7692E646F63>

Similar documents
報告題名 : 應用程式設計期末報告 產品管理系統 作者 : 張紹剛系級 : 工業二甲學號 :D 開課老師 : 陳亭志課程名稱 : 應用程式設計開課系所 : 工業工程與系統管理開課學年 :97 學年度第 1 學期

Microsoft Word - 應用程式設計.doc

<4D F736F F D20C0B3A5CEB57BA6A1B35DAD70C075BDE8B3F8A7692D B169B7D3BD6E2E646F63>

Microsoft PowerPoint - VB14.ppt

投影片 1

Microsoft Word - d 邱書毅.doc

Visual Basic D 3D

untitled

投影片 1

ActiveX Control

(Microsoft Word - wes _\246p\246\363\250\317\245\316LED\277O\305\343\245\334\252\254\272A.doc)

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

IsPostBack 2

計算機程式及實習 期末報告ppt製作 題目:南台黑心早餐店結帳系統

Microsoft PowerPoint - 第14章.ppt

Chapter 16 集合

CHAPTER VC#

Microsoft Word - 小心翼翼的二十一點N.doc

(Microsoft Word - wes _\246p\246\363\250\317\245\316watchdog\250\276\244\356\265{\246\241\267\355\276\367.doc)

穨文件1

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

PowerPoint Presentation

Microsoft Word - 序.DOC


星星排列 _for loop Protected Sub Page_Load(ByVal sender As Object, ByVal e As Dim h As Integer = 7 'h 為變數 ' Dim i, j As Integer For i = 1 To h

陳韻如 陳榮霖:陣列控制項技術之研究與應用.doc

2

untitled

1 1 Excel VBA 說明 ( ) (_) STEP4 Excel 2 STEP5 A1 1 B2 2 C3 3 STEP6 A1 STEP7 > > 1-11

ThreeDtunnel.doc

< D5044B57BA6A1B35DAD70C3FE C C0CBA977C344AE77B8D1C344AFB5D3442DB9EAA5CEBD672DA8E5C2C32E706466>

VB控件教程大全

TC35短信发送程序设计

untitled

untitled

Microsoft PowerPoint - VB7

<4D F736F F D B0D3B77EC3FEA7DEC3C0C476C1C9A5BFA6A1B8D5C3442DB57BA6A1B35DAD702DBEC7ACEC2E646F6378>

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63>

Maasa停車場管理系統

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f

untitled

3 Driver do Microsoft Access (*.mdb) hisdata IFIX 1.4

投稿類別:電子工程類


untitled

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

智慧型水塔研究

使用手冊

Microsoft Word - AEL0153-序

05 CHAPTER Information.IsNumeric ( ) Information.IsDate ( ) True False Date Date True False Y Y Information.IsArray ( ) True False Y Information.IsErr

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class

新 闻 学 46 7 新 闻 传 播 学 院 广 告 学 28 4 广 播 电 视 学 23 3 新 闻 学 广 告 学 ). 级 学 生 申 请 准 入 需 修 完 或 正 在 修 2 门 专 业 准 入 课 程 并 取 得 相 应 学 分 ;2). 级 学 生 申 请 准 入 需

計算機程式及實習 期末報告

VB程序设计教程

馬孝先

Microsoft Word - CH07_P36

Microsoft Word - paper.doc

untitled

壹 前言 一 研究動機 在學校的課程中學到由微軟開發的程式語言 (Microsoft Visual Basic2010), 才了解到有很多小時候玩到的許多遊戲是由 VB 寫出來的程式, 這讓我們覺得只要學習 VB, 就可以寫出我們理想的遊戲, 為了對這語言有所了解, 我們打算先了解 VB 的歷史,

國立嘉義高中96學年度資優班語資班成班考國文科試題

投稿類別 : 資訊類 篇名 : Visual Basic 愛財嫁有財 作者 : 李健瑛 市立沙鹿高級工業職業學校 資料處理科三年甲班陳宜佳 市立沙鹿高級工業職業學校 資料處理科三年甲班陳玟潔 市立沙鹿高級工業職業學校 資料處理科三年甲班 指導老師 : 謝若湘

新・解きながら学ぶJava

Microsoft Word - æ−Łç¨¿é¡žå‹¥2

通 知

Chapter 3 Camera Raw Step negative clarity +25 ] P / Step 4 0 ( 下一頁 ) Camera Raw Chapter 3 089

1.5招募说明书(草案)

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

TwinCAT 1. TwinCAT TwinCAT PLC PLC IEC TwinCAT TwinCAT Masc

多層次傳銷與獎金系統

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp

Microsoft Word - 專題製作研究報告書.doc

untitled

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

Excel VBA Excel Visual Basic for Application

穨ac3-3.PDF

投影片 1

Microsoft PowerPoint - 第10章.ppt

基于ECO的UML模型驱动的数据库应用开发1.doc

(Microsoft Word - \261M\303D\246\250\252G\263\370\247i.doc)

投影片 1

7 DataSet DataSet TableColumnDataSet DataSet NOTE DataSet DataAdapterDataSetDataAdapter DataSet DataSetDataSetDataSet NorthwindDataSet DataSet Dim Nor


附 錄

實作SQLiteOpenHelper類別

根據 一手住宅物業銷售條例 第 60 條所備存的成交記錄冊 Register of Transactions kept for the purpose of section 60 of the Residential Properties (First-hand Sales) Ordinance 第

CHAPTER 1

MVB-1001.DOC


Microsoft Word - ch04三校.doc

四川省普通高等学校

untitled

電腦上的串列阜

游戏厅捕鱼技巧_天天酷跑游戏技巧 2048游戏技巧,游戏厅打鱼技巧_

ACI pdf

Visual Basic AD/DA Visual Basic 2

CC213

381 課業輔導學習輔導 20 第二節 中學生的學習輔導 Skinner Skinner Skinner Bandura Bandura (381) 學習輔導.indd /5/31 2:44:13 PM

穨ac3-4.PDF

Transcription:

報告題名 : 作者 : 林芳如系級 : 工業工程與系統管理學系四年甲班學號 :D9439951 開課老師 : 陳亭志課程名稱 : 應用程式設計開課系所 : 工業工程與系統管理學系開課學年 :95 學年度第一學期

目錄 一 方案總管...... 1 二 主選單執行畫面及程式碼...2 三 瀏覽產品資料執行畫面及程式碼...5 四 多筆瀏覽執行畫面及程式碼...6 五 新增產品資料執行畫面及程式碼..8 六 逐筆瀏覽執行畫面及程式碼 12 七 刪除 / 修改產品資料執行畫面及程式碼.. 19 八 統計圖表執行畫面及程式碼 24 九 報價單執行畫面及程式碼 31 十 心得...33 1 逢甲大學學生 - 林芳如報告 (2006 年 )

一 方案總管 Form1: 此表單為主選單, 與其他表單作相關連結, 讓使用者方便操作, 並另設保護作用, 若 1 分鐘內閒置沒操作, 會自動跳出程式 Form2: 瀏覽產品資料 Form3: 多筆瀏覽, 利用此表單可一次瀏覽所有的產品資料 Form4: 新增產品資料, 可在此表單直接輸入新產品資料至資料庫 Form5: 逐筆瀏覽, 可利用此表單逐筆瀏覽產品資料及產品圖片, 並可在此直接勾選所需要的產品及數量 Form6: 刪除 / 修改產品資料, 當刪除或修改完畢, 系統會告知執行成功 Form7: 統計圖表, 統計各項產品及廠商所佔的比例 Form8: 報價單, 當在 Form5 把需求量勾選完畢之後, 可產生此報價單 而上述所有表單屬性皆設 : StartPosition: CenterScreen FormBorderStyle: FixedSingle MaximizeBox: False MinimizeBox: False 另外 : Db1DataSet.xsd: 為產品資料, 作為各個表單的連結 Db1DataSet1.xsd: 為報價單, 在 Form8 作為連結 1 逢甲大學學生 - 林芳如報告 (2006 年 )

二 主選單主選單執行畫面及程式碼 程式碼 : Public Class Form1 Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick End ' 60 秒內無操作就結束程式 Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click '*************** ' 要離開系統嚕! '*************** End Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '********************************* ' 新增 Form2 2 逢甲大學學生 - 林芳如報告 (2006 年 )

' 點選後進入到 Form2 瀏覽產品資料 '********************************* Dim form21 As New Form2 Timer1.Enabled = False ' 停止計時 form21.show() ' 秀出 Form2 Me.Hide() ' 隱藏 Form1 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click '********************************* ' 新增 Form4 ' 點選後進入到 Form4 新增產品資料 '********************************* Dim form41 As New Form4 Timer1.Enabled = False ' 停止計時 form41.show() ' 秀出 Form4 Me.Hide() ' 隱藏 Form1 Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click '********************************* ' 新增 Form6 ' 點選後進入到 Form6 刪除產品資料 '********************************* Dim form61 As New Form6 Timer1.Enabled = False ' 停止計時 form61.show() ' 秀出 Form6 Me.Hide() ' 隱藏 Form1 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click '********************************* ' 新增 Form6 ' 點選後進入到 Form6 編輯產品資料 '********************************* 3 逢甲大學學生 - 林芳如報告 (2006 年 )

Dim form61 As New Form6 Timer1.Enabled = False ' 停止計時 form61.show() ' 秀出 Form6 Me.Hide() ' 隱藏 Form1 Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click '***************************** ' 新增 Form7 ' 點選後進入到 Form7 統計圖表 '***************************** Dim form71 As New Form7 Timer1.Enabled = False ' 停止計時 form71.show() ' 秀出 Form7 Me.Hide() ' 隱藏 Form1 Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed '******************************* ' 表單一關閉即 End 以正常結束程式 '******************************* End End Class 4 逢甲大學學生 - 林芳如報告 (2006 年 )

三 瀏覽產品資料瀏覽產品資料執行畫面及程式碼 程式碼 : Public Class Form2 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click '********************* ' 到 Form1 回到主選單 '********************* Dim form11 As New Form1 form11.show() ' 秀出 Form1 Me.Hide() ' 隱藏 Form2 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click '******************** ' 新增 Form3 ' 到 Form3 多筆瀏覽 '******************** Dim form31 As New Form3 form31.show() ' 秀出 Form3 5 逢甲大學學生 - 林芳如報告 (2006 年 )

Me.Hide() ' 隱藏 Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '******************* ' 新增 Form5 ' 到 Form5 逐筆瀏覽 '******************* Dim form51 As New Form5 form51.show() ' 秀出 Form5 Me.Hide() ' 隱藏 Form2 Private Sub Form2_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed '****************************** ' 表單一關閉即 End 以正常結束程式 '****************************** End End Class 四 多筆瀏覽多筆瀏覽執行畫面及程式碼 6 逢甲大學學生 - 林芳如報告 (2006 年 )

程式碼 : Public Class Form3 Private Sub Form3_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 更新資料庫後再關閉 '**************************** ' 表單一關閉即 end 正常結束程式 '**************************** End Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: 這行程式碼會將資料載入 'Db1DataSet. 林芳如之產品基本資料 ' 資料表 您可以視需要進行移動或移除 Me. 林芳如之產品基本資料 TableAdapter.Fill(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 表單一開啟即填入資料集 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '*********************** ' 回上一頁 ' 到 Form2 瀏覽產品資料 '*********************** Dim form21 As New Form2 Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) form21.show() ' 秀出 Form2 Me.Hide() ' 隱藏 Form3 End Class 7 逢甲大學學生 - 林芳如報告 (2006 年 )

五 新增產品資料新增產品資料執行畫面及程式碼 程式碼 : Public Class Form4 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '******************** 8 逢甲大學學生 - 林芳如報告 (2006 年 )

' 到 Form1 回到主選單 '******************** Dim form11 As New Form1 Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 更新資料庫後才能移至其它表單 form11.show() ' 秀出 Form1 Me.Hide() ' 隱藏 Form4 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click '************************** ' 點選清空後, 會清空所有欄位 '************************** TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" TextBox4.Text = "" TextBox5.Text = "" TextBox6.Text = "" ComboBox1.Text = " 請選擇單位 " Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim 產品名稱 As String Dim 供應商 As String Dim 單位 As String Dim 進貨成本 As Single Dim 市價 As Single Dim 售價 As Single Dim 產品圖片 As String '******************* ' 讀取使用著輸入資料 '******************* 產品名稱 = TextBox1.Text 供應商 = TextBox2.Text 單位 = ComboBox1.SelectedItem 9 逢甲大學學生 - 林芳如報告 (2006 年 )

進貨成本 = Val(TextBox3.Text) 市價 = Val(TextBox4.Text) 售價 = Val(TextBox5.Text) 產品圖片 = TextBox6.Text '********************************************************** ' 當產品名稱, 供應商, 單位, 產品圖片有其中一欄未填寫 ' 或者進貨成本, 市價, 售價有一欄 =0 ' 系統訊息會出現 " 部分尚未填寫 ", 全部填寫完整, 資料才能新增成功 '********************************************************** If 產品名稱 = "" Or 供應商 = "" Or 單位 = "" Or 進貨成本 = 0 Or 市價 = 0 Or 售價 = 0 Or 產品圖片 = "" Then MsgBox(" 有部份資料尚未填寫 ",, " 系統訊息 ") Else Me.Db1DataSet. 林芳如之產品基本資料.Add 林芳如之產品基本資料 Row( 產品名稱, 供應商, 單位, 進貨成本, 市價, 售價, 產品圖片 ) Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) MsgBox(" 資料新增成功!",, " 系統訊息 ") Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress '************************************************** ' 輸入 ( 產品名稱 ) 按 enter 即跳至輸入 ( 供應商 ), 不需移動滑鼠 '************************************************** If Asc(e.KeyChar) = 13 Then TextBox2.Focus() Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress '************************************************** ' 輸入 ( 供應商 ) 按 enter 即跳至輸入 ( 單位 ), 不需移動滑鼠 '************************************************** If Asc(e.KeyChar) = 13 Then ComboBox1.Focus() 10 逢甲大學學生 - 林芳如報告 (2006 年 )

Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress '*************************************************** ' 輸入 ( 進貨成本 ) 按 enter 即跳至輸入 ( 市價 ), 不需移動滑鼠 '*************************************************** If Asc(e.KeyChar) = 13 Then TextBox4.Focus() Private Sub TextBox4_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress '************************************************** ' 輸入 ( 市價 ) 按 enter 即跳至輸入 ( 售價 ), 不需移動滑鼠 '************************************************** If Asc(e.KeyChar) = 13 Then TextBox5.Focus() Private Sub TextBox5_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress '*************************************************** ' 輸入 ( 售價 ) 按 enter 即跳至輸入 ( 產品圖片 ), 不需移動滑鼠 '*************************************************** If Asc(e.KeyChar) = 13 Then TextBox6.Focus() Private Sub TextBox6_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress '*************************************************** ' 輸入 ( 產品圖片 ) 按 enter 即跳至 ( 確定 ) 按鈕, 不需移動滑鼠 '*************************************************** If Asc(e.KeyChar) = 13 Then 11 逢甲大學學生 - 林芳如報告 (2006 年 )

Button2.Focus() Private Sub Form4_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 更新資料庫後再關閉 '******************************* ' 表單一關閉即 end 以正常結束程式 '******************************* End Private Sub Form4_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 進行移動或移除 'TODO: 這行程式碼會將資料載入 'Db1DataSet. 林芳如的產品基本資料 ' 資料表 您可以視需要 Me. 林芳如之產品基本資料 TableAdapter.Fill(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 表單 一開啟即填入資料集 End Class 六 逐筆瀏覽逐筆瀏覽執行畫面及程式碼 12 逢甲大學學生 - 林芳如報告 (2006 年 )

程式碼 : Public Class Form5 Dim 目前資料位置 As Integer Dim 是否報價 (100) As Integer Dim 報價數量 (100) As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '******************** ' 到 Form2 瀏覽產品資料 '******************** Dim form21 As New Form2 form21.show() ' 秀出 form2 Me.Hide() ' 隱藏 form5 Private Sub Form5_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed '**************************** ' 表單一關閉即 end 正常結束程式 '**************************** End Private Sub Form5_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load '*********** ' 移到第一筆 '*********** 目前資料位置 = 0 'TODO: 這行程式碼會將資料載入 'Db1DataSet. 林芳如之產品基本資料 ' 資料表 您可以視需要進行移動或移除 Me. 林芳如之產品基本資料 TableAdapter.Fill(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 表單一開啟即填入資料集 'TODO: 這行程式碼會將資料載入 'Db1DataSet1. 報價單 ' 資料表 您可以視需要進行移動或移除 Me. 報價單 TableAdapter.Fill(Me.Db1DataSet1. 報價單 ) '*************** ' 顯示第一筆資料 13 逢甲大學學生 - 林芳如報告 (2006 年 )

'*************** TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(7) '*********************************************** ' 逐筆瀏覽可顯示產品圖片 ' 若沒產品圖片會出現 noimage 的圖片 暫無產品圖片 '*********************************************** PictureBox1.Image = New Bitmap("noimage.gif") On Error Resume PictureBox1.Image = New Bitmap(TextBox7.Text) If 是否報價 ( 目前資料位置 ) = 0 Then ' 若回傳值 =0, 還未選擇 CheckBox1.Checked = False 'Checkbox1 不會打勾 ComboBox1.Text = "( 選擇數量 )" 'Combobox1 會要求選擇數量 Else ' 若回傳值不等於 0, 已經輸入選擇 CheckBox1.Checked = True 'Checkbox1 會勾選 ComboBox1.Text = 報價數量 ( 目前資料位置 ) 'Combobox1 會出現選擇的數量 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click '******************* ' 回到第一筆產品資料 '******************* 目前資料位置 = 0 '*************** ' 重新顯示資料 '*************** TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) 14 逢甲大學學生 - 林芳如報告 (2006 年 )

TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) '*********************************************** ' 逐筆瀏覽可顯示產品圖片 ' 若沒產品圖片會出現 noimage 的圖片 暫無產品圖片 '*********************************************** PictureBox1.Image = New Bitmap("noimage.gif") On Error Resume PictureBox1.Image = New Bitmap(TextBox7.Text) If 是否報價 ( 目前資料位置 ) = 0 Then ' 若回傳值 =0, 還未選擇 CheckBox1.Checked = False 'Checkbox1 不會打勾 ComboBox1.Text = "( 選擇數量 )" 'Combobox1 會要求選擇數量 Else ' 若回傳值不等於 0, 已經輸入選擇 CheckBox1.Checked = True 'Checkbox1 會勾選 ComboBox1.Text = 報價數量 ( 目前資料位置 ) 'Combobox1 會出現選擇的數量 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click '************************** ' 移到上一筆產品資料 ' 在第一筆資料會移到最後一筆 '************************** If 目前資料位置 = 0 Then 目前資料位置 = Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 Else 目前資料位置 = 目前資料位置 - 1 TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) '*********************************************** ' 逐筆瀏覽可顯示產品圖片 15 逢甲大學學生 - 林芳如報告 (2006 年 )

' 若沒產品圖片會出現 noimage 的圖片 暫無產品圖片 '*********************************************** PictureBox1.Image = New Bitmap("noimage.gif") On Error Resume PictureBox1.Image = New Bitmap(TextBox7.Text) If 是否報價 ( 目前資料位置 ) = 0 Then ' 若回傳值 =0, 還未選擇 CheckBox1.Checked = False 'Checkbox1 不會打勾 ComboBox1.Text = "( 選擇數量 )" 'Combobox1 會要求選擇數量 Else ' 若回傳值不等於 0, 已經輸入選擇 CheckBox1.Checked = True 'Checkbox1 會勾選 ComboBox1.Text = 報價數量 ( 目前資料位置 ) 'Combobox1 會出現選擇的數量 Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click '************************** ' 移到下一筆產品資料 ' 在最後一筆資料會移到第一筆 '************************** If 目前資料位置 = Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 Then 目前資料位置 = 0 Else 目前資料位置 = 目前資料位置 + 1 TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) '*********************************************** ' 逐筆瀏覽可顯示產品圖片 ' 若沒產品圖片會出現 noimage 的圖片 暫無產品圖片 '*********************************************** PictureBox1.Image = New Bitmap("noimage.gif") On Error Resume 16 逢甲大學學生 - 林芳如報告 (2006 年 )

PictureBox1.Image = New Bitmap(TextBox7.Text) If 是否報價 ( 目前資料位置 ) = 0 Then ' 若回傳值 =0, 還未選擇 CheckBox1.Checked = False 'Checkbox1 不會打勾 ComboBox1.Text = "( 選擇數量 )" 'Combobox1 會要求選擇數量 Else ' 若回傳值不等於 0, 已經輸入選擇 CheckBox1.Checked = True 'Checkbox1 會勾選 ComboBox1.Text = 報價數量 ( 目前資料位置 ) 'Combobox1 會出現選擇的數量 Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click '********************* ' 移到最後一筆產品資料 '********************* 目前資料位置 = Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) '*********************************************** ' 逐筆瀏覽可顯示產品圖片 ' 若沒產品圖片會出現 noimage 的圖片 暫無產品圖片 '*********************************************** PictureBox1.Image = New Bitmap("noimage.gif") On Error Resume PictureBox1.Image = New Bitmap(TextBox7.Text) If 是否報價 ( 目前資料位置 ) = 0 Then ' 若回傳值 =0, 還未選擇 CheckBox1.Checked = False 'Checkbox1 不會打勾 ComboBox1.Text = "( 選擇數量 )" 'Combobox1 會要求選擇數量 Else ' 若回傳值不等於 0, 已經輸入選擇 CheckBox1.Checked = True 'Checkbox1 會勾選 ComboBox1.Text = 報價數量 ( 目前資料位置 ) 'Combobox1 會出現選擇的數量 17 逢甲大學學生 - 林芳如報告 (2006 年 )

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged CheckBox1.Checked = True 是否報價 ( 目前資料位置 ) = 1 報價數量 ( 目前資料位置 ) = Val(ComboBox1.SelectedItem) Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click If CheckBox1.Checked = True Then 是否報價 ( 目前資料位置 ) = 1 報價數量 ( 目前資料位置 ) = 1 ComboBox1.Text = "( 選擇數量 )" Else 是否報價 ( 目前資料位置 ) = 0 報價數量 ( 目前資料位置 ) = 0 ComboBox1.Text = "( 選擇數量 )" Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click '************ ' 產生報價單 '************ Dim 項目編號 As Integer Dim 產品名稱 As String Dim 單價 As Integer Dim 數量 As Integer Dim i As Integer For i = 0 To Me.Db1DataSet1. 報價單.Rows.Count - 1 項目編號 = Me.Db1DataSet1. 報價單.Rows(i)(0) 產品名稱 = Me.Db1DataSet1. 報價單.Rows(i)(1) 單價 = Me.Db1DataSet1. 報價單.Rows(i)(2) 數量 = Me.Db1DataSet1. 報價單.Rows(i)(3) Me. 報價單 TableAdapter.Delete( 項目編號, 產品名稱, 單價, 數量 ) 18 逢甲大學學生 - 林芳如報告 (2006 年 )

Me. 報價單 TableAdapter.Update(Db1DataSet1) ' 需放迴圈裡面 For i = 0 To Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 If 是否報價 (i) = 1 Then 產品名稱 = Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(1) 單價 = Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(6) 數量 = 報價數量 (i) Me.Db1DataSet1. 報價單.Add 報價單 Row( 產品名稱, 單價, 數量 ) Me. 報價單 TableAdapter.Update(Db1DataSet1) '***************************** ' 新增 Form8 ' 點選後進入到 Form8 報價單 '***************************** Dim form81 As New Form8 form81.show() ' 秀出 Form8 Me.Hide() ' 隱藏 Form5 End Class 七 刪除 / 修改產品資料執行畫面及程式碼 19 逢甲大學學生 - 林芳如報告 (2006 年 )

程式碼 : Public Class Form6 Dim 目前資料位置 As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '******************************* ' 點選後進入到 Form2 瀏覽產品資料 '******************************* Dim form21 As New Form2 form21.show() ' 秀出 Form2 Me.Hide() ' 隱藏 Form6 Private Sub Form6_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed '**************************** ' 表單一關閉即 end 正常結束程式 '**************************** End Private Sub Form6_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 20 逢甲大學學生 - 林芳如報告 (2006 年 )

'TODO: 這行程式碼會將資料載入 'Db1DataSet. 林芳如之產品基本資料 ' 資料表 您可以視需要進行移動或移除 Me. 林芳如之產品基本資料 TableAdapter.Fill(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 表單一開啟即填入資料集 '*************** ' 顯示第一筆資料 '*************** TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows(0)(7) 目前資料位置 = 0 ' 移到第一筆 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click '******************* ' 回到第一筆產品資料 '******************* 目前資料位置 = 0 '*************** ' 重新顯示資料 '*************** TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 21 逢甲大學學生 - 林芳如報告 (2006 年 )

'************************** ' 移到上一筆產品資料 ' 在第一筆資料會移到最後一筆 '************************** If 目前資料位置 = 0 Then 目前資料位置 = Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 Else 目前資料位置 = 目前資料位置 - 1 TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click '************************** ' 移到下一筆產品資料 ' 在最後一筆資料會移到第一筆 '************************** If 目前資料位置 = Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 Then 目前資料位置 = 1 Else 目前資料位置 = 目前資料位置 + 1 TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) 22 逢甲大學學生 - 林芳如報告 (2006 年 )

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click '********************* ' 移到最後一筆產品資料 '********************* 目前資料位置 = Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 TextBox1.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) TextBox2.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) TextBox3.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) TextBox4.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) TextBox5.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) TextBox6.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) TextBox7.Text = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click '************ ' 刪除產品資料 '************ Dim 產品編號 As Integer Dim 產品名稱 As String Dim 供應商 As String Dim 單位 As String Dim 進貨成本 As Single Dim 市價 As Single Dim 售價 As Single Dim 產品圖片 As String 產品編號 = Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(0) 產品名稱 = TextBox1.Text 供應商 = TextBox2.Text 單位 = TextBox3.Text 進貨成本 = Val(TextBox4.Text) 市價 = Val(TextBox5.Text) 售價 = Val(TextBox6.Text) 產品圖片 = TextBox7.Text Me. 林芳如之產品基本資料 TableAdapter.Delete( 產品編號, 產品名稱, 供應商, 單位, 進貨成本, 市價, 售價, 產品圖片 ) 23 逢甲大學學生 - 林芳如報告 (2006 年 )

Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) MsgBox(" 資料已刪除 ",, " 系統訊息 ") ' 點選刪除按鈕後系統訊息會告知資料已刪除 Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click '************ ' 更新產品資料 '************ If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or TextBox4.Text = "" Or TextBox5.Text = "" Or TextBox6.Text = "" Or TextBox7.Text = "" Then MsgBox(" 有部份資料尚未填寫 ",, " 系統訊息 ") Else Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(1) = TextBox1.Text Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(2) = TextBox2.Text Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(3) = TextBox3.Text Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(4) = Val(TextBox4.Text) Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(5) = Val(TextBox5.Text) Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(6) = Val(TextBox6.Text) Me.Db1DataSet. 林芳如之產品基本資料.Rows( 目前資料位置 )(7) = TextBox7.Text Me. 林芳如之產品基本資料 TableAdapter.Update(Me.Db1DataSet. 林芳如之產品基本資料 ) MsgBox(" 資料已更新!",, " 系統訊息 ") ' 直接更改後點選更新按鈕系統會告知資料已更新 End Class 八 統計圖表統計圖表執行畫面及程式碼 24 逢甲大學學生 - 林芳如報告 (2006 年 )

程式碼 : Public Class Form7 Private Sub 回主選單 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 回主選單 ToolStripMenuItem.Click '******************** ' 到 Form1 回到主選單 '******************** Dim form11 As New Form1 form11.show() ' 秀出 form1 Me.Hide() ' 隱藏 Form7 Private Sub Form7_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed '**************************** 25 逢甲大學學生 - 林芳如報告 (2006 年 )

' 表單一關閉即 end 正常結束程式 '**************************** End Private Sub Form7_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me. 林芳如之產品基本資料 TableAdapter.Fill(Me.Db1DataSet. 林芳如之產品基本資料 ) ' 表單一開啟即填入資料集 Private Sub 粉底 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 粉底 ToolStripMenuItem.Click Dim 類別 () = {" 粉底液 ", " 粉餅 "} Dim 數量 () = {0, 0} Dim 比例 (2) As Single Dim i, j As Integer For i = 0 To Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 For j = 0 To 1 If InStr(Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(1), 類別 (j)) > 0 Then 數量 (j) = 數量 (j) + 1 For j = 0 To 1 比例 (j) = 數量 (j) / Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count '********* ' 畫圓餅圖 '********* Dim g As Graphics g = Me.CreateGraphics g.clear(me.backcolor) Dim 黃刷, 紅刷, 藍刷 As Brush 黃刷 = Brushes.Yellow 紅刷 = Brushes.Red 藍刷 = Brushes.Blue g.fillpie( 黃刷, 50, 100, 100, 100, 0, 比例 (0) * 360) 26 逢甲大學學生 - 林芳如報告 (2006 年 )

g.fillpie( 紅刷, 50, 100, 100, 100, 比例 (0) * 360, 比例 (1) * 360) g.fillpie( 藍刷, 50, 100, 100, 100, 比例 (0) * 360 + 比例 (1) * 360, 360 - 比例 (0) * 360 - 比例 (1) * 360) g.fillrectangle( 黃刷, 180, 100, 50, 20) g.fillrectangle( 紅刷, 180, 130, 50, 20) g.fillrectangle( 藍刷, 180, 160, 50, 20) g.drawstring( 類別 (0), Me.Font, Brushes.Black, 240, 100) g.drawstring( 類別 (1), Me.Font, Brushes.Black, 240, 130) g.drawstring(" 其他 ", Me.Font, Brushes.Black, 240, 160) Private Sub 眼影 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 眼影 ToolStripMenuItem.Click Dim 類別 () = {" 眼影 ", " 眼蜜 "} Dim 數量 () = {0, 0} Dim 比例 (2) As Single Dim i, j As Integer For i = 0 To Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 For j = 0 To 1 If InStr(Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(1), 類別 (j)) > 0 Then 數量 (j) = 數量 (j) + 1 For j = 0 To 1 比例 (j) = 數量 (j) / Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count '********* ' 畫圓餅圖 '********* Dim g As Graphics g = Me.CreateGraphics g.clear(me.backcolor) Dim 黃刷, 紅刷, 藍刷 As Brush 黃刷 = Brushes.Yellow 紅刷 = Brushes.Red 藍刷 = Brushes.Blue g.fillpie( 黃刷, 50, 100, 100, 100, 0, 比例 (0) * 360) 27 逢甲大學學生 - 林芳如報告 (2006 年 )

g.fillpie( 紅刷, 50, 100, 100, 100, 比例 (0) * 360, 比例 (1) * 360) g.fillpie( 藍刷, 50, 100, 100, 100, 比例 (0) * 360 + 比例 (1) * 360, 360 - 比例 (0) * 360 - 比例 (1) * 360) g.fillrectangle( 黃刷, 180, 100, 50, 20) g.fillrectangle( 紅刷, 180, 130, 50, 20) g.fillrectangle( 藍刷, 180, 160, 50, 20) g.drawstring( 類別 (0), Me.Font, Brushes.Black, 240, 100) g.drawstring( 類別 (1), Me.Font, Brushes.Black, 240, 130) g.drawstring(" 其他 ", Me.Font, Brushes.Black, 240, 160) Private Sub 睫毛膏 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 睫毛膏 ToolStripMenuItem.Click Dim 類別 () = {" 濃密睫毛膏 ", " 纖長睫毛膏 "} Dim 數量 () = {0, 0} Dim 比例 (2) As Single Dim i, j As Integer For i = 0 To Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 For j = 0 To 1 If InStr(Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(1), 類別 (j)) > 0 Then 數量 (j) = 數量 (j) + 1 For j = 0 To 1 比例 (j) = 數量 (j) / Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count '********* ' 畫圓餅圖 '********* Dim g As Graphics g = Me.CreateGraphics g.clear(me.backcolor) Dim 黃刷, 紅刷, 藍刷 As Brush 黃刷 = Brushes.Yellow 紅刷 = Brushes.Red 藍刷 = Brushes.Blue g.fillpie( 黃刷, 50, 100, 100, 100, 0, 比例 (0) * 360) 28 逢甲大學學生 - 林芳如報告 (2006 年 )

g.fillpie( 紅刷, 50, 100, 100, 100, 比例 (0) * 360, 比例 (1) * 360) g.fillpie( 藍刷, 50, 100, 100, 100, 比例 (0) * 360 + 比例 (1) * 360, 360 - 比例 (0) * 360 - 比例 (1) * 360) g.fillrectangle( 黃刷, 180, 100, 50, 20) g.fillrectangle( 紅刷, 180, 130, 50, 20) g.fillrectangle( 藍刷, 180, 160, 50, 20) g.drawstring( 類別 (0), Me.Font, Brushes.Black, 240, 100) g.drawstring( 類別 (1), Me.Font, Brushes.Black, 240, 130) g.drawstring(" 其他 ", Me.Font, Brushes.Black, 240, 160) Private Sub 修容餅 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 修容餅 ToolStripMenuItem.Click Dim 類別 () = {" 修容餅 ", " 腮紅 "} Dim 數量 () = {0, 0} Dim 比例 (2) As Single Dim i, j As Integer For i = 0 To Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 For j = 0 To 1 If InStr(Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(1), 類別 (j)) > 0 Then 數量 (j) = 數量 (j) + 1 For j = 0 To 1 比例 (j) = 數量 (j) / Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count '********* ' 畫圓餅圖 '********* Dim g As Graphics g = Me.CreateGraphics g.clear(me.backcolor) Dim 黃刷, 紅刷, 藍刷 As Brush 黃刷 = Brushes.Yellow 紅刷 = Brushes.Red 藍刷 = Brushes.Blue g.fillpie( 黃刷, 50, 100, 100, 100, 0, 比例 (0) * 360) 29 逢甲大學學生 - 林芳如報告 (2006 年 )

g.fillpie( 紅刷, 50, 100, 100, 100, 比例 (0) * 360, 比例 (1) * 360) g.fillpie( 藍刷, 50, 100, 100, 100, 比例 (0) * 360 + 比例 (1) * 360, 360 - 比例 (0) * 360 - 比例 (1) * 360) g.fillrectangle( 黃刷, 180, 100, 50, 20) g.fillrectangle( 紅刷, 180, 130, 50, 20) g.fillrectangle( 藍刷, 180, 160, 50, 20) g.drawstring( 類別 (0), Me.Font, Brushes.Black, 240, 100) g.drawstring( 類別 (1), Me.Font, Brushes.Black, 240, 130) g.drawstring(" 其他 ", Me.Font, Brushes.Black, 240, 160) Private Sub 依供應商 ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 依供應商 ToolStripMenuItem.Click Dim 廠商名稱 (100) As String Dim 種類數 (100) As Integer Dim 第幾家, 找到了 As Integer Dim i, j As Integer Dim x 座標, y 座標, 寬度, 長度 As Integer 第幾家 = 0 For i = 0 To Me.Db1DataSet. 林芳如之產品基本資料.Rows.Count - 1 找到了 = 0 For j = 0 To 99 If 廠商名稱 (j) = Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(2) Then 種類數 (j) = 種類數 (j) + 1 找到了 = 1 If 找到了 = 0 Then 廠商名稱 ( 第幾家 ) = Me.Db1DataSet. 林芳如之產品基本資料.Rows(i)(2) 種類數 ( 第幾家 ) = 1 第幾家 = 第幾家 + 1 Array.Sort( 種類數, 廠商名稱 ) Array.Reverse( 種類數 ) Array.Reverse( 廠商名稱 ) '********* ' 畫長條圖 30 逢甲大學學生 - 林芳如報告 (2006 年 )

'********* Dim g As Graphics g = Me.CreateGraphics g.clear(me.backcolor) g.drawline(pens.black, 50, 250, 350, 250) For i = 0 To 4 x 座標 = 70 + i * 70 y 座標 = 250 - 種類數 (i) / 種類數 (0) * 200 寬度 = 40 長度 = 種類數 (i) / 種類數 (0) * 200 g.fillrectangle(brushes.blue, x 座標, y 座標, 寬度, 長度 ) g.drawstring( 廠商名稱 (i), New Font(" 標楷體 ", 12), Brushes.Purple, x 座標, 255) g.dispose() End Class 九 報價單報價單執行畫面及程式碼 31 逢甲大學學生 - 林芳如報告 (2006 年 )

程式碼 : Public Class Form8 Private Sub Form8_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed '**************************** ' 表單一關閉即 end 正常結束程式 '**************************** End Private Sub Form8_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: 這行程式碼會將資料載入 'Db1DataSet1. 報價單 ' 資料表 您可以視需要進行移動或移除 Me. 報價單 TableAdapter.Fill(Me.Db1DataSet1. 報價單 ) ' 表單一開啟即填入資料集 Dim i As Integer Dim 報價項目數 As Integer Dim 金額, 報價總金額 As Single 報價項目數 = Me.Db1DataSet1. 報價單.Rows.Count For i = 0 To Me.Db1DataSet1. 報價單.Rows.Count - 1 金額 = Me.Db1DataSet1. 報價單.Rows(i)(2) * Me.Db1DataSet1. 報價單.Rows(i)(3) ' 產品金額 = 單價 * 數量報價總金額 = 報價總金額 + 金額 ' 總金額 = 各項產品金額相加 TextBox4.Text = 報價項目數 ' 產生要報價產品數目 TextBox5.Text = 報價總金額 ' 產生要報價產品總金額 End Class 32 逢甲大學學生 - 林芳如報告 (2006 年 )

十 心得 因為現今電腦的普及, 軟體的發展也越來越多元化, 而這些軟體即是由程 式所構成的, 其中,Visual Basic 是基本程式語言之一 未觸碰 VB 之前, 時常聽 到寫程式很困難, 再加上自己對電腦一竅不通, 因此更加畏懼, 但經過了這一學 期的學習, 減少了我對 VB 語言的退縮感 在學習過程中, 剛開始上課先聽老師講解, 一邊做筆記, 之後再親自操作 一遍, 驗收自己是否已對程式了解, 再繼續往下延伸, 但碰到太複雜的程式, 不 免會有沮喪感, 在這磨練的過程中也奠定了最基本的程式基礎 在期中考過後, 所學的東西就更加深入 首先, 先利用 ACCESS 建立產品 資料庫, 為了方便變更資料, 因此建立一個可以同時新增 修改或刪除動作的系 統 另外, 也可利用系統查詢產品資料及圖片, 直接勾選產品需求量, 就能快速 產生報價單 雖然此系統的程式較為複雜, 但經由老師細心的一步一步指導下, 終於完成了產品資料管理系統 資料庫的應用非常廣泛, 例如像查詢系統 拍賣及現今流行的部落格. 等 等, 皆需要資料庫的輔助管理, 並帶來操作上的方便 經由這學期的 VB 課程, 讓我了解到, 程式語言的運用如此廣泛, 不只學習到有趣的小遊戲, 還有實用的 資料庫系統, 增加了對 VB 的興趣及奠定下基礎的能力 33 逢甲大學學生 - 林芳如報告 (2006 年 )