06.08.2013 Views

周佳姿

周佳姿

周佳姿

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Visual Basic<br />

作 品 集<br />

資 料 處 理 科<br />

作 者 : 周 佳 姿<br />

指 導 老 師 : 張 銘 棋<br />

1<br />

2008


CH4<br />

目 錄<br />

F o r m 1 - 溫 度 換 算<br />

F o r m 2 - 不 同 的 邊 框<br />

F o r m 3 - 變 身 的 小 框<br />

F o r m 4 - 改 變 背 景<br />

E x a m 1 - 溫 度 轉 換 器<br />

E x a m 2 - 改 變 國 旗 及 背 景 圖 案<br />

CH5<br />

F o r m 1 - 時 間 器<br />

F o r m 2 - 顯 示 編 碼<br />

E X 1 - 簡 易 計 算 機<br />

CH6<br />

F o r m 1 - 促 銷 折 扣 活 動<br />

F o r m 2 - 猜 數 字 遊 戲<br />

F o r m 3 - 展 現 各 種 字 型 效 果<br />

E X 1 - 找 出 三 個 數 值 的 最 大 值<br />

E X 2 - 數 字 金 字 塔<br />

2


CH7<br />

F o r m 1 - 數 字 沙 漏<br />

F o r m 2 - 蟑 螂 進 行 曲<br />

F o r m 3 - 電 子 時 鐘<br />

E X 1 - 統 計 成 績<br />

E X 2 - 數 字 金 字 塔<br />

CH8<br />

F o r m 1 - 計 算 成 績<br />

F o r m 2 - 計 算 輸 入 資 料 筆 數<br />

F o r m 3 - 由 小 排 到 大<br />

F o r m 4 - 查 詢 成 績<br />

F o r m 5 - 繳 稅 計 算 器<br />

F o r m 6 - 字 型 設 定 程 式<br />

F o r m 7 - 資 料 換 算<br />

F o r m 8 - 字 型 設 定<br />

E X 1 - 唱 歌 成 績 排 行<br />

E X 2 - 移 動 清 單 方 塊 項 目<br />

E X 3 - 餐 廳 排 隊 給 號 系 統<br />

CH9<br />

M o d u l e 1 - 計 算 F r a c ( 5 ) 的 值<br />

M o d u l e 2 - 計 算 加 速 度 運 動<br />

M o d u l e 3 - 傳 值 呼 叫<br />

F o r m 4 - 樂 透 彩<br />

3


F o r m 5 - 計 算 輸 入 數 字 的 F r a c<br />

M o d u l e 6 - 河 內 塔<br />

E X 1 - 擲 骰 子<br />

CH10<br />

F o r m 1 - 輸 入 英 文 字 母 全 為 大 寫<br />

F o r m 2 - 數 值 加 入 千 分 位<br />

F o r m 3 - 滑 鼠 移 入 表 單 時 變 色<br />

F o r m 4 - 測 試 按 鍵 改 變 背 景<br />

CH11<br />

F o r m 1 - 繪 畫 板<br />

F o r m 2 - 塗 鴉 牆<br />

F o r m 3 - 圖 片 填 滿 表 單<br />

E X 1 - 依 輸 入 大 小 畫 圓 且 變 色<br />

E X 2 - 音 樂 播 放 器<br />

CH11-1<br />

F o r m 1 - 依 個 人 喜 好 畫 圖<br />

CH12<br />

F o r m 1 - 多 功 能 表 單<br />

E X 1 - 多 功 能 表 單 、 長 度 、 重 量 換 算<br />

4


CH13<br />

F o r m 1 - 檔 案 總 管<br />

F o r m 2 - 簡 易 檔 案 總 管<br />

CH13-1<br />

F o r m 1 - 檔 案 總 管<br />

CH14-1<br />

F o r m 1 - 書 籍 目 錄<br />

F o r m 2 - 書 籍 目 錄<br />

F o r m 3 - 書 籍 目 錄<br />

F o r m 4 - 書 籍 目 錄<br />

F o r m 5 - 書 籍 目 錄<br />

F o r m 6 - 成 衣 目 錄<br />

F o r m 7 - 查 詢 書 籍 系 統<br />

EXAM1<br />

F o r m 1 - 簡 易 計 算 機<br />

F o r m 2 - B M I 與 三 角 形 面 積<br />

EXAM2<br />

F o r m 1 - 計 算 單 數 值<br />

F o r m 2 - 電 度 換 算 表<br />

5


EXAM3<br />

F o r m 1 - 費 氏 函 數<br />

F o r m 2 - 猜 點 數 合 大 小<br />

EXAM4<br />

F o r m 1 - 輸 入 英 文 字 母 全 為 大 寫<br />

F o r m 2 - 畫 圓 加 十 字<br />

F o r m 3 - 簡 易 音 樂 播 放 器<br />

EXAM5<br />

F o r m 1 - 螢 幕 保 護 程 式<br />

F o r m 2 - 檔 案 總 管<br />

F o r m 3 - 便 利 貼<br />

6


CH4<br />

Form1 溫 度 換 算<br />

Public Class Form1<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim c, f, r As Integer<br />

c = Val(InputBox("請輸入攝氏溫度", "攝氏溫度轉換"))<br />

f = c * 9 / 5 + 32<br />

r = MsgBox("攝氏" & c & " 度=華氏" & f & "度。", 1 + 64, "轉換結果")<br />

'MsgBox(r)<br />

If r = 1 Then<br />

Else<br />

End Sub<br />

End Class<br />

MsgBox("感謝使用本程式")<br />

End<br />

End If<br />

Form2 不 同 的 邊 框<br />

Public Class Form2<br />

Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Label1.BorderStyle = BorderStyle.Fixed3D<br />

Label1.Text = "立體邊框"<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

Label1.BorderStyle = BorderStyle.FixedSingle<br />

Label1.Text = "單線邊框"<br />

Private Sub Button3_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles Button3.Click<br />

End Sub<br />

Label1.BorderStyle = BorderStyle.None<br />

Label1.Text = "無邊框"<br />

7


End Class<br />

Form3 變 身 的 小 框<br />

Public Class Form3<br />

Private Sub Label1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles<br />

Label1.Click<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles<br />

Button1.Click<br />

Label1.Location = New<br />

Point(Label1.Location.X - 30, Label1.Location.Y)<br />

End Sub<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

Label1.Location = New Point(Label1.Location.X + 30, Label1.Location.Y)<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

End Sub<br />

Label1.Size = New Size(Label1.Size.Width + 10, Label1.Size.Height + 10)<br />

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />

End Sub<br />

Label1.Size = New Size(Label1.Size.Width - 10, Label1.Size.Height - 10)<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

End Sub<br />

Label1.BackColor = Color.White<br />

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />

End Sub<br />

Label1.BackColor = Color.Red<br />

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />

End Sub<br />

Label1.BackColor = Color.Green<br />

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

End Class<br />

Form4 改 變 背 景<br />

Public Class Form4<br />

8


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Me.BackgroundImage = New Bitmap("..\..\考試順利.gif")<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

Me.BackgroundImage = New Bitmap("..\..\財源廣進.gif")<br />

Private Sub Button3_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles<br />

Button3.Click<br />

安.gif")<br />

End Sub<br />

Me.BackgroundImage = New Bitmap("..\..\闔家平<br />

Private Sub Button4_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles<br />

Button4.Click<br />

End Sub<br />

Me.BackgroundImage = Nothing<br />

Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

PictureBox1.Click<br />

End Sub<br />

End Class<br />

PictureBox1.Image = New Bitmap("..\..\homejump.gif")<br />

EX1 溫 度 轉 換 器<br />

Public Class Ex1<br />

Private Sub Label1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles Label1.Click<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles Button1.Click<br />

Dim h As Integer<br />

h = Val(TextBox1.Text * 9 / 5 + 32)<br />

Label2.Text = "攝氏溫度=" &<br />

TextBox1.Text & "華氏溫度=" & h<br />

End Sub<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

Dim s As Double<br />

9


End Sub<br />

s = (TextBox1.Text - 32) * 5 / 9<br />

Label2.Text = "華氏溫度=" & TextBox1.Text & "攝氏溫度=" & Math.Round(s, 2)<br />

Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click<br />

End Sub<br />

End Class<br />

EX2 切 換 國 旗 與 背 景 圖 案<br />

Public Class Ex2<br />

Private Sub PictureBox1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles PictureBox1.Click<br />

End Sub<br />

Private Sub Button3_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles Button3.Click<br />

Me.BackgroundImage = New<br />

Bitmap("..\..\fBg1.gif")<br />

End Sub<br />

Private Sub Button4_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles Button4.Click<br />

End Sub<br />

Me.BackgroundImage = New Bitmap("..\..\fBg2.gif")<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

End Sub<br />

Me.BackgroundImage = New Bitmap("..\..\fBg3.gif")<br />

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />

End Sub<br />

PictureBox1.Image = New Bitmap("..\..\fJapan2.gif")<br />

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />

End Sub<br />

PictureBox1.Image = New Bitmap("..\..\fFrance2.gif")<br />

Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click<br />

End Sub<br />

PictureBox1.Image = New Bitmap("..\..\fCanada2.gif")<br />

Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click<br />

End Sub<br />

PictureBox1.Image = New Bitmap("..\..\fUSA2.gif")<br />

10


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

PictureBox1.Size = New Size(PictureBox1.Size.Width + 10, PictureBox1.Size.Height + 10)<br />

PictureBox1.Location = New Point(PictureBox1.Location.X - 5, PictureBox1.Location.Y - 5)<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

End Class<br />

PictureBox1.Size = New Size(PictureBox1.Size.Width - 10, PictureBox1.Size.Height - 10)<br />

PictureBox1.Location = New Point(PictureBox1.Location.X + 5, PictureBox1.Location.Y + 5)<br />

CH5<br />

Form1 時 間 器<br />

Public Class Form1<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal<br />

e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

End Class<br />

Form2 顯 示 編 碼<br />

Public Class Form2<br />

11<br />

Label1.Text = "按鈕時間為" & vbCrLf & Now<br />

Private Sub Button1_Click(ByVal sender As System.Object,<br />

ByVal e As System.EventArgs) Handles Button1.Click<br />

")"<br />

Dim a<br />

End Sub<br />

End Clas<br />

EX1 簡 易 計 算 機<br />

Public Class EX1<br />

a = AscW(TextBox1.Text & ChrW(0))<br />

Label1.Text = "Unicled:" & a & " (十六進位:" & Hex(a) &


Dim a#<br />

Dim last_op$<br />

Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "0"<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "1"<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "2"<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "3"<br />

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "4"<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "5"<br />

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "6"<br />

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "7"<br />

Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "8"<br />

Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "9"<br />

Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

Button11.Click<br />

End Sub<br />

TextBox1.Text = TextBox1.Text & "."<br />

Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

Button16.Click<br />

End Sub<br />

a = Val(TextBox1.Text)<br />

TextBox1.Text = ""<br />

last_op = "devide"<br />

Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

Button15.Click<br />

a = Val(TextBox1.Text)<br />

12


End Sub<br />

TextBox1.Text = ""<br />

last_op = "multiply"<br />

Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

Button14.Click<br />

End Sub<br />

a = Val(TextBox1.Text)<br />

TextBox1.Text = ""<br />

last_op = "subtract"<br />

Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

Button13.Click<br />

End Sub<br />

a = Val(TextBox1.Text)<br />

TextBox1.Text = ""<br />

last_op = "add"<br />

Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

Button12.Click<br />

End Sub<br />

End Class<br />

Select Case last_op<br />

Case "devide"<br />

TextBox1.Text = a / TextBox1.Text<br />

Case "multiply"<br />

TextBox1.Text = a * TextBox1.Text<br />

Case "subtract"<br />

TextBox1.Text = a - TextBox1.Text<br />

Case "add"<br />

End Select<br />

last_op = ""<br />

TextBox1.Text = a + TextBox1.Text<br />

a = Val(TextBox1.Text)<br />

CH6<br />

Form1 促 銷 折 扣 活 動<br />

Public Class Form1<br />

Dim buy As Integer, pay As Integer<br />

Dim msg As String<br />

Private Sub Button1_Click(ByVal sender As System.Object,<br />

ByVal e As System.EventArgs) Handles Button1.Click<br />

buy = Val(TextBox1.Text)<br />

If buy > 1000 Then<br />

13


Else<br />

End Sub<br />

End Class<br />

End If<br />

pay = buy * 0.8<br />

If buy > 2000 Then<br />

Else<br />

End If<br />

msg = "超過2000元,先打8折再減100元"<br />

pay = pay - 100<br />

msg = "超過1000元,先打8折再減50元"<br />

pay = pay - 50<br />

If buy > 500 Then<br />

Else<br />

End If<br />

msg = "金額未超過500元打9折"<br />

pay = buy * 0.9<br />

msg = "金額未超過500元打95折"<br />

pay = buy * 0.95<br />

TextBox2.Text = pay<br />

Label3.Text = msg<br />

TextBox1.Focus()<br />

TextBox1.SelectAll()<br />

Form2 猜 數 字 遊 戲<br />

Public Class Form2<br />

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Randomize()<br />

vAns.Text = CInt(Int((100 * Rnd()) + 1))<br />

Private Sub Button1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles Button1.Click<br />

Dim v As Integer, ans As Integer<br />

ans = Val(vAns.Text)<br />

v = Val(TextBox1.Text)<br />

vCnt.Text = Val(vCnt.Text) + 1<br />

If v = ans Then<br />

MsgBox("答對了,您共猜了" & vCnt.Text & "次。")<br />

14


Else<br />

End Sub<br />

End Class<br />

End If<br />

End '結束程式<br />

If v < ans Then<br />

Else<br />

End If<br />

vMin.Text = v<br />

vMax.Text = v<br />

TextBox1.Focus()<br />

TextBox1.SelectAll()<br />

Form3 展 示 各 種 字 型 效 果<br />

Public Class Form3<br />

Dim fName As String, fSize As Integer, fStyle As FontStyle<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

fSize = 12<br />

fStyle = FontStyle.Regular<br />

fn_new.Checked = True<br />

fName = If(fn_new.Checked, "新細明體", "標楷體")<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

fst_b.Checked = False<br />

fst_i.Checked = False<br />

fst_del.Checked = False<br />

fst_und.Checked = False<br />

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

fName = If(fn_new.Checked, "新細明體", "標楷體")<br />

If fs_9.Checked Then<br />

fSize = 9<br />

ElseIf fs_10.Checked Then<br />

fSize = 10<br />

ElseIf fs_11.Checked Then<br />

fSize = 11<br />

ElseIf fs_12.Checked Then<br />

End If<br />

fSize = 12<br />

fStyle = If(fst_b.Checked,<br />

15


FontStyle.Bold, 0) Or If(fst_i.Checked, FontStyle.Italic, 0) Or If(fst_del.Checked, FontStyle.Strikeout, 0) Or<br />

If(fst_und.Checked, FontStyle.Underline, 0)<br />

End Sub<br />

Private Sub fn_new_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fn_new.CheckedChanged<br />

End Sub<br />

Label1.Font = New Font("新細明體", Label1.Font.Size, (Label1.Font.Style))<br />

Private Sub fn_kai_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fn_kai.CheckedChanged<br />

End Sub<br />

Label1.Font = New Font("標楷體", Label1.Font.Size, (Label1.Font.Style))<br />

Private Sub fs_9_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fs_9.CheckedChanged<br />

End Sub<br />

fSize = 9<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fs_10_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fs_10.CheckedChanged<br />

End Sub<br />

fSize = 10<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fs_11_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fs_11.CheckedChanged<br />

End Sub<br />

fSize = 11<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fs_12_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fs_12.CheckedChanged<br />

End Sub<br />

fSize = 12<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fst_b_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fst_b.CheckedChanged<br />

fStyle = If(fst_b.Checked, FontStyle.Bold, 0) Or If(fst_i.Checked, FontStyle.Italic, 0) Or<br />

If(fst_del.Checked, FontStyle.Strikeout, 0) Or If(fst_und.Checked, FontStyle.Underline, 0)<br />

End Sub<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fst_i_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fst_i.CheckedChanged<br />

fStyle = If(fst_b.Checked, FontStyle.Bold, 0) Or If(fst_i.Checked, FontStyle.Italic, 0) Or<br />

16


If(fst_del.Checked, FontStyle.Strikeout, 0) Or If(fst_und.Checked, FontStyle.Underline, 0)<br />

End Sub<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fst_del_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fst_del.CheckedChanged<br />

fStyle = If(fst_b.Checked, FontStyle.Bold, 0) Or If(fst_i.Checked, FontStyle.Italic, 0) Or<br />

If(fst_del.Checked, FontStyle.Strikeout, 0) Or If(fst_und.Checked, FontStyle.Underline, 0)<br />

End Sub<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

Private Sub fst_und_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

fst_und.CheckedChanged<br />

fStyle = If(fst_b.Checked, FontStyle.Bold, 0) Or If(fst_i.Checked, FontStyle.Italic, 0) Or<br />

If(fst_del.Checked, FontStyle.Strikeout, 0) Or If(fst_und.Checked, FontStyle.Underline, 0)<br />

End Sub<br />

End Class<br />

Label1.Font = New Font(fName, fSize, fStyle)<br />

EX1 找 出 三 個 數 值 的 最 大 值<br />

Public Class EX1<br />

Dim a, b, c As Integer<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

a = Val(TextBox1.Text)<br />

b = Val(TextBox2.Text)<br />

c = Val(TextBox3.Text)<br />

If a > b Then<br />

Else<br />

If b > c Then<br />

End If<br />

Label2.Text = "最大值" & a<br />

If a < b Then<br />

End If<br />

If b < c Then<br />

End If<br />

Label2.Text = "最大值" & c<br />

If a < b Then<br />

End If<br />

If b > c Then<br />

End If<br />

Label2.Text="最大值"& b<br />

17


End If<br />

EX2 點 餐 計 價<br />

Public Class EX2<br />

Dim a, b, c, d As Integer<br />

Private Sub EX2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click<br />

End Sub<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Dim p As Integer<br />

p = 30 * Val(TextBox1.Text) + 70 * Val(TextBox2.Text) + 65 * Val(TextBox3.Text) + 99 * Val(TextBox4.Text)<br />

Label5.Text = "=總價" & p & "元"<br />

If RadioButton2.Checked = True Then<br />

End If<br />

If p < 300 Then p = p + 30 : Label5.Text = Label5.Text & " + 運費30元"<br />

If CheckBox1.Checked = True Then p = p * 0.9 : Label5.Text = Label5.Text & " + 打9折"<br />

If CheckBox2.Checked = True Then p = p * 0.8 : Label5.Text = Label5.Text & " + 打8折"<br />

TextBox5.Text = p<br />

CH7<br />

Form1 數 字 沙 漏<br />

Public Class Form1<br />

Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click<br />

End Sub<br />

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e<br />

As System.EventArgs) Handles MyBase.Load<br />

\ 4 + 1))<br />

Dim i As Integer<br />

'第一個迴圈由 25 到 1,每次減 4<br />

For i = 25 To 1 Step -4<br />

Label1.Text = Label1.Text & vbCrLf & StrDup(i, CStr(i<br />

18


Next<br />

'第二個迴圈由 5 到 25,每次加 4<br />

For i = 5 To 25 Step 4<br />

Next<br />

End Sub<br />

End Class<br />

Label1.Text = Label1.Text & vbCrLf & StrDup(i, CStr(i \ 4 + 1))<br />

19


Form2 蟑 螂 進 行 曲<br />

Public Class Form2<br />

Private Sub<br />

PictureBox1_Click(ByVal sender As<br />

System.Object, ByVal e As<br />

System.EventArgs) Handles<br />

roach.Click<br />

End Sub<br />

Private Sub play_Click(ByVal<br />

sender As System.Object, ByVal e As System.EventArgs) Handles play.Click<br />

play.Visible = False<br />

roach.Left = 0 - roach.Size.Width<br />

roach.Visible = True<br />

Do<br />

End Sub<br />

roach.Left = roach.Left + 1<br />

If roach.Left Mod 10 = 0 Then<br />

End If<br />

roach.Top = roach.Top + CInt(Int(7 * Rnd())) - 3<br />

System.Threading.Thread.Sleep(1) '暫停1/1000秒<br />

Application.DoEvents()<br />

Loop Until (roach.Left > Me.ClientSize.Width)<br />

play.Visible = True<br />

roach.Visible = False<br />

Private Sub 蟑螂進行曲_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

End Class<br />

Randomize()<br />

Form3 電 子 時 鐘<br />

Public Class Form3<br />

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Label1.Text = Format(Now(), "HH:mm:ss")<br />

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As<br />

System.EventArgs) Handles Timer1.Tick<br />

Label1.Text = Format(Now(), _<br />

20


End Sub<br />

If(CheckBox1.Checked, "hh:mm:ss", "HH:mm:ss"))<br />

Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

CheckBox2.CheckedChanged<br />

End Sub<br />

End Class<br />

Timer1.Enabled = Not CheckBox2.Checked<br />

EX1 統 計 成 績<br />

Public Class EX1<br />

Dim a, b As Integer<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

If Val(TextBox1.Text) < -1 Or Val(TextBox1.Text) > 100 Then MsgBox("請輸入0~100的分數,-1為結束。", 64<br />

+ 0, "重新輸入") _<br />

w:<br />

: TextBox1.Text = "" : TextBox1.Focus() : Exit Sub<br />

If Val(TextBox1.Text) = "-1" Then GoTo w<br />

If Val(TextBox1.Text) > 60 Then a = a + 1<br />

b = b + Val(TextBox1.Text)<br />

Label2.Text = Label2.Text + 1<br />

TextBox1.Text = ""<br />

TextBox1.Focus()<br />

Exit Sub<br />

MsgBox("全班人數:" & Label2.Text - 1 & " 及格人數:" & a &<br />

" 不及格人數:" & Label2.Text - 1 - a _<br />

End Sub<br />

End Class<br />

& " 全班平均值:" & b / (Label2.Text - 1))<br />

EX2 數 字 金 字 塔<br />

Public Class EX2<br />

Private Sub EX2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

Dim i, n, a, j As Integer<br />

For i = 1 To 15<br />

Label1.Text = Label1.Text & vbCrLf<br />

For n = 1 To i<br />

a = n<br />

If a >= 10 Then a = a - 10<br />

21


Next<br />

End Sub<br />

End Class<br />

Next<br />

Label1.Text = Label1.Text & a<br />

For j = i - 1 To 1 Step -1<br />

Next<br />

a = j<br />

CH8<br />

If a >= 10 Then a = a - 10<br />

Label1.Text = Label1.Text & a<br />

Form1 計 算 成 績<br />

Public Class Form1<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim 總分 As Double '可能含小數, 所以用 Double 型別<br />

'將輸入的資料轉為成績陣列, 並計算筆數<br />

Dim 成績陣列() As String = Split(TextBox1.Text, ",")<br />

Dim 筆數 = UBound(成績陣列) + 1<br />

'將所有的成績加總起來<br />

For Each s In 成績陣列<br />

Next<br />

End Sub<br />

End Class<br />

總分 = 總分 + Val(s)<br />

MsgBox("成績筆數:" & 筆數 & vbCrLf & _<br />

"總成績為:" & 總分 & vbCrLf & _<br />

"平均成績:" & Math.Round(總分 / 筆數, 2))<br />

Form2 計 算 輸 入 資 料 筆 數<br />

Module Form2<br />

串為止<br />

Sub main()<br />

Dim 資料, 陣列() As String<br />

Dim 筆數 As Integer<br />

'不斷讓使用者輸入資料並儲存, 直到輸入空字<br />

22


Do<br />

Loop<br />

End Sub<br />

End Module<br />

Console.Write("請輸入資料:")<br />

資料 = Console.ReadLine()<br />

If 資料 = "" Then Exit Do<br />

ReDim Preserve 陣列(筆數)<br />

陣列(筆數) = 資料<br />

筆數 = 筆數 + 1<br />

Console.WriteLine("您一共輸入了" & 筆數 & " 筆資料。 ")<br />

Console.ReadLine() '相當於Pause<br />

Form3 由 小 排<br />

到 大<br />

Module Form3<br />

Sub main()<br />

Dim X(4), i As Integer<br />

For i = 0 To 40<br />

Next<br />

Console.Write("請輸入數值資料:")<br />

X(i) = Val(Console.ReadLine)<br />

Array.Sort(X) '將陣列元素從小排到大<br />

For i = 0 To 40<br />

Next<br />

End Sub<br />

End Module<br />

Console.WriteLine("X(" & i & ") = " & X(i))<br />

Console.ReadLine()<br />

Public Class Form4<br />

Form4 查 詢 成 績<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As<br />

System.EventArgs) Handles Button1.Click<br />

Dim 姓名() = {"陳桶一", "黃光權", "胡生妙", "王為全", _<br />

"李日正", "劉德菖", "方正一", "劉康寶", _<br />

23


"謝掬花", "王美蘭", "徐小噹", "葉小毛"}<br />

Dim 數學() = {90, 58, 41, 100, 59, 28, 100, 0, 100, 41, 91, 0}<br />

Dim 國文() = {76, 77, 14, 97, 66, 11, 98, 0, 74, 46, 99, 10}<br />

Dim 英文() = {98, 75, 33, 87, 57, 33, 100, 10, 89, 49, 84, 0}<br />

'尋找輸入的姓名, 若沒找到則傳回負數<br />

Dim 索引 = Array.IndexOf(姓名, TextBox1.Text)<br />

If 索引 < 0 Then<br />

Else<br />

End Sub<br />

End Class<br />

End If<br />

Label5.Text = "查無此人!"<br />

Label6.Text = ""<br />

Label7.Text = ""<br />

Label5.Text = 數學(索引)<br />

Label6.Text = 國文(索引)<br />

Label7.Text = 英文(索引)<br />

Dim a$ = ""<br />

Dim i% = Array.IndexOf(數學, 100)<br />

While i > 0<br />

a = a & " " & 姓名(i)<br />

i = Array.IndexOf(數學, 100, i + 1)<br />

End While<br />

MsgBox(a, , "數學100分")<br />

Form5 繳 稅 計 算 器<br />

Public Class Form5<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim 稅率(,) As Integer = _<br />

{{410000, 6, 0}, _<br />

{1090000, 13, 28700}, _<br />

{2180000, 21, 115900}, _<br />

{4090000, 30, 312100}, _<br />

{4090001, 40, 721100}}<br />

Dim 所得淨額 As Integer = Val(TextBox1.Text) '<br />

將輸入字串轉為數值<br />

Dim i As Integer<br />

'尋找適用的稅率, 找到即跳出迴圈<br />

For i = 0 To UBound(稅率, 1) - 1<br />

24


Next<br />

End Sub<br />

End Class<br />

If 所得淨額


Form6 字 型 設 定 程 式<br />

Public Class Form6<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

If ListBox1.SelectedIndex = -1 Then _<br />

ListBox1.SelectedItem = Label1.Font.Name<br />

If ListBox2.SelectedItem = -1 Then _<br />

ListBox2.SelectedIndex = 0<br />

If ListBox3.SelectedIndex = -1 Then _<br />

ListBox3.SelectedItem = "12"<br />

Dim 字型名稱 As String = ListBox1.SelectedItem<br />

Dim 字型樣式 As FontStyle<br />

Dim 字型大小 As Integer =<br />

Val(ListBox3.SelectedItem)<br />

End Sub<br />

End Class<br />

Select ListBox2.SelectedItem<br />

Case "標準"<br />

字型樣式 = FontStyle.Regular<br />

Case "粗字"<br />

字型樣式 = FontStyle.Bold<br />

Case "斜體"<br />

字型樣式 = FontStyle.Italic<br />

Case "粗斜體"<br />

End Select<br />

字型樣式 = FontStyle.Bold Or FontStyle.Italic<br />

Label1.Font = New Font(字型名稱, 字型大小, 字型樣式)<br />

Form7 資 料 互 換<br />

Public Class Form7<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim i As Integer<br />

' 逐一將 ListBox1 被選取的選項加到 ListBox2 中<br />

For i = 0 To ListBox1.SelectedItems.Count - 1<br />

Next<br />

ListBox2.Items.Add(ListBox1.SelectedItems(i))<br />

' 由後往前逐一刪除 ListBox1 被選取的選項<br />

For i = ListBox1.SelectedIndices.Count - 1 To 0 Step -1<br />

26


中<br />

Next<br />

End Sub<br />

ListBox1.Items.RemoveAt(ListBox1.SelectedIndices(i))<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

Dim i As Integer<br />

' 逐一將 ListBox2 被選取的選項加到 ListBox1<br />

For i = 0 To ListBox2.SelectedItems.Count - 1<br />

ListBox1.Items.Add(ListBox2.SelectedItems(i))<br />

Next<br />

' 由後往前逐一刪除 ListBox2 被選取的選項<br />

For i = ListBox2.SelectedIndices.Count - 1 To 0 Step -1<br />

Next<br />

End Sub<br />

End Class<br />

ListBox2.Items.RemoveAt(ListBox2.SelectedIndices(i))<br />

Form8 字 型 設 定<br />

Public Class Form8<br />

Private Sub Form8_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

ComboBox2.Text = "標準"<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

If ComboBox1.Text = "" Then ComboBox1.Text = Label1.Font.Name()<br />

If ComboBox1.Text = "" Then ComboBox2.SelectedIndex = 0<br />

If ComboBox1.Text = "" Then ComboBox3.Text = "12"<br />

Dim 字型名稱 As String = ComboBox1.SelectedItem<br />

Dim 字型樣式 As FontStyle<br />

Dim 字型大小 As Integer = Val(ComboBox3.SelectedItem)<br />

Select Case ComboBox2.Text<br />

Case "標準"<br />

字型樣式 = FontStyle.Regular<br />

Case "粗字"<br />

字型樣式 = FontStyle.Bold<br />

Case "斜體"<br />

字型樣式 = FontStyle.Italic<br />

Case "粗斜體"<br />

字型樣式 = FontStyle.Bold + FontStyle.Italic<br />

27


End Sub<br />

End Class<br />

End Select<br />

Label1.Font = New Font(字型名稱, 字型大小, 字型樣式)<br />

Ex1 唱 歌 成 績 排 行<br />

Public Class EX1<br />

Private Sub EX1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load<br />

Dim name() = {"吳國民", "李得勝", "蔡可申", "陳夢嬌", "方十全"}<br />

Dim sum(4) As Short<br />

Dim score(,) = {{77, 78, 78, 84, 84, 79, 77, 76, 76, 81}, _<br />

Dim min, max As Short<br />

For i = 0 To 4<br />

Next<br />

min = score(i, 0)<br />

max = score(i, 0)<br />

sum(i) = score(i, 0)<br />

For j = 1 To 9<br />

Next<br />

{89, 89, 92, 88, 91, 87, 86, 90, 85, 89}, _<br />

{89, 82, 87, 83, 82, 89, 86, 86, 84, 80}, _<br />

{86, 86, 90, 89, 81, 86, 90, 85, 87, 86}, _<br />

{89, 88, 87, 88, 86, 84, 86, 93, 84, 87}}<br />

If score(i, j) < min Then<br />

End If<br />

min = score(i, j)<br />

If score(i, j) > max Then<br />

End If<br />

max = score(i, j)<br />

sum(i) = sum(i) + score(i, j)<br />

sum(i) = sum(i) - min - max<br />

Array.Sort(sum, name)<br />

For i = 4 To 0 Step -1<br />

Next<br />

End Sub<br />

End Class<br />

Label1.Text = Label1.Text & name(i) & " " & sum(i) / 8 & vbCrLf<br />

28


Ex2 移 動 清 單 方 塊 項 目<br />

Public Class Ex2<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)<br />

ListBox1.SelectedIndex = ListBox1.SelectedIndex - 1<br />

Private Sub Ex2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

For i As Integer = 0 To 6<br />

Next<br />

End Sub<br />

ListBox1.Items.Add(i)<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal<br />

e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

End Class<br />

ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)<br />

ListBox1.SelectedIndex = ListBox1.SelectedIndex + 1<br />

Ex3 餐 廳 排 隊 給 號 系 統<br />

Public Class EX3<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

Dim i As Integer<br />

For i = 0 To ListBox1.SelectedItems.Count - 1<br />

Next<br />

ListBox2.Items.Add(ListBox1.SelectedItems(i))<br />

For i = ListBox1.SelectedIndices.Count - 1 To 0 Step -1<br />

Next<br />

End Sub<br />

ListBox1.Items.RemoveAt(ListBox1.SelectedIndices(i))<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

Dim i As Integer<br />

For i = 0 To ListBox2.SelectedItems.Count - 1<br />

Next<br />

ListBox1.Items.Add(ListBox2.SelectedItems(i))<br />

For i = ListBox2.SelectedIndices.Count - 1 To 0 Step -1<br />

ListBox2.Items.RemoveAt(ListBox2.SelectedIndices(i))<br />

29


Next<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

If TextBox1.Text "" Then<br />

End If<br />

If ListBox1.SelectedIndex = -1 Then<br />

End If<br />

ListBox1.Items.Add(TextBox1.Text)<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

End Sub<br />

If ListBox1.SelectedIndex >= 0 Then<br />

End If<br />

ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

End Class<br />

If TextBox1.Text "" Then<br />

End If<br />

CH9<br />

ListBox1.Items(ListBox1.SelectedIndex) = TextBox1.Text<br />

Module1 計 算 Frac(5)的 值<br />

Module Module1<br />

Sub Main()<br />

End Sub<br />

frac(5)<br />

Sub Frac(ByVal n As Integer)<br />

的簡便寫法<br />

Dim total As Double = 1<br />

Dim i%<br />

For i = 1 To n '這是『total=total*i』<br />

Next<br />

End Sub<br />

End Module<br />

Console.WriteLine(n & "! 的值為 " & total)<br />

30


Module2 計 算 加 速 度 運 動<br />

Module Module2<br />

Sub Main()<br />

End Sub<br />

'以三個參數呼叫<br />

Finalv(10, 15, 3) '時間10秒、初速15秒、加速度3<br />

Console.WriteLine("----------")<br />

'以兩個參數呼叫<br />

Finalv(10, 20) '時間10秒、初速20<br />

Console.WriteLine("----------")<br />

'以一個參數呼叫<br />

Finalv(10) '時間10秒<br />

'在第2、3個參數前加上 Optional 關<br />

鍵字,並指定預設值<br />

_<br />

Sub Finalv(ByVal Seconds As Single,<br />

Single = 0, _<br />

Optional ByVal V0 As<br />

Optional ByVal<br />

Accelaration As Single = 9.8)<br />

End Sub<br />

End Module<br />

Console.WriteLine("初速" & V0 & ", 加速度" & Accelaration & _<br />

'速度計算公式 V=V0+at<br />

", 經" & Seconds & "秒後,")<br />

Dim Velocity = V0 + Accelaration * Seconds<br />

Console.WriteLine("速度為" & Velocity)<br />

Module3 傳 值 呼 叫<br />

Module Module3<br />

Sub Main()<br />

Dim a() As Integer = {1, 2, 3, 4}<br />

Doublearrayvalue(a)<br />

'逐一列出陣列元素的程序<br />

For i = 0 To a.Length - 1<br />

Next<br />

Console.WriteLine(a(i))<br />

31


End Sub<br />

'使用傳值呼叫的程序<br />

Sub Doublearrayvalue(ByVal b() As Integer)<br />

'用迴圈將陣列中每個元素都乘以2<br />

For i = 0 To b.Length - 1 'Length 屬性可傳回陣列的元素個數<br />

Next<br />

End Sub<br />

End Module<br />

b(i) *= 2<br />

32


Form4 樂 透 彩<br />

Public Class Form4<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

'建立用來記錄五個開出號碼的Draw陣列<br />

Dim Draw(4) As Integer<br />

Dim Lucky As Integer<br />

Randomize()<br />

'產生五個隨機號碼的迴圈<br />

For i = 0 To 4<br />

Next<br />

End Sub<br />

End Class<br />

'當元素是預設值 0 時,就指定給目前的元素<br />

While Draw(i) = 0<br />

Lucky = CInt(Int(Rnd() * 39) + 1)<br />

'若產商的亂數不在陣列中,就指定給目前的元素<br />

If Array.IndexOf(Draw, Lucky) = -1 Then<br />

End If<br />

End While<br />

Draw(i) = Lucky<br />

'將Draw陣列中的數字顯示到Label控制項<br />

Label1.Text = Draw(0)<br />

Label2.Text = Draw(1)<br />

Label3.Text = Draw(2)<br />

Label4.Text = Draw(3)<br />

Label5.Text = Draw(4)<br />

Button1.Text = "再試一次"<br />

Form5 計 算 輸 入 數 字 的 Frac<br />

Public Class Form5<br />

Function fac(ByVal i As Integer) As Long<br />

If i


Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

End Class<br />

Dim a%<br />

a = Val(TextBox1.Text)<br />

Label2.Text = fac(a)<br />

Module6 河 內 塔<br />

Module Module6<br />

Dim number As Integer '移動次數<br />

Sub Main()<br />

End Sub<br />

Dim n As Integer = 0<br />

number = 0<br />

Console.Write("圓盤的張數 = ")<br />

n = Console.ReadLine()<br />

aa(n, "A", "B", "C")<br />

Console.ReadLine()<br />

Sub aa(ByVal n, ByVal a, ByVal b, ByVal c)<br />

End Sub<br />

End Module<br />

If n > 0 Then<br />

End If<br />

' 把 n-1 張圓盤從 a 移到 b<br />

aa(n - 1, a, c, b)<br />

' 把最下面的圓盤從 a 移到 c<br />

number += 1<br />

Console.WriteLine("{0} : {1} --> {2}", number, a, c)<br />

' 把 n-1 張圓盤從 b 移到 c<br />

aa(n - 1, b, a, c)<br />

Ex1 擲 骰 子<br />

Public Class EX1<br />

Private Sub EX1_Load(ByVal sender As System.Object, ByVal e As<br />

System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

34


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Dim a, b As Integer<br />

Randomize() '這很重要,以時間來當作亂數種子,否則每次亂數產生的數列都會一樣<br />

Label1.Text = Int(Rnd() * 6) + 1<br />

Label2.Text = Int(Rnd() * 6) + 1<br />

PictureBox1.Image = New Bitmap("..\..\" & Label1.Text & ".gif")<br />

PictureBox2.Image = New Bitmap("..\..\" & Label2.Text & ".gif")<br />

Ex2 自 由 落 體 落 下 之 距 離<br />

Public Class EX2<br />

Function freefall(ByVal t) As Single<br />

Return 1 / 2 * 9.8 * t ^ 2<br />

End Function<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

End Class<br />

Label2.Text = "自由落體掉落距離" & freefall(Val(TextBox1.Text)) & "米"<br />

CH10<br />

Form1 輸 入 英 文 字 母 全 為 大 寫、數<br />

Public Class Form1<br />

值 加 入 千 分 位、滑 鼠 移 入 表<br />

單 時 變 色<br />

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Private Sub Form1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseEnter<br />

End Sub<br />

Me.BackColor = Color.White<br />

Private Sub Form1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseLeave<br />

End Sub<br />

Me.BackColor = SystemColors.Control<br />

35


Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)<br />

Handles TextBox1.KeyPress<br />

End Sub<br />

Select Case e.KeyChar<br />

Case "a" To "z"<br />

End Select<br />

TextBox1.AppendText(Chr(Asc(e.KeyChar) - 32))<br />

e.Handled = True<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

End Sub<br />

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox2.TextChanged<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

End Class<br />

Dim n, c As Integer<br />

If Len(n) > 3 Then<br />

End If<br />

If Len(n) Mod 3 0 Then<br />

Else<br />

End If<br />

Public Class Form2<br />

c = Mid(n, 1, Len(n) Mod 3)<br />

For i = (Len(n) Mod 3) + 1 To Len(n)<br />

Next<br />

For i = 1 To Len(n)<br />

Next<br />

Form2 測 試 按 鍵 改 變 背 景<br />

Private Sub Form2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles<br />

Me.KeyDown<br />

If e.KeyCode = Keys.B And e.Control = True Then<br />

Me.BackColor = Color.White<br />

ElseIf e.KeyCode = Keys.G And e.Control = True Then<br />

End If<br />

Me.BackColor = SystemColors.Control<br />

36


End Sub<br />

End Class<br />

37


CH11<br />

Form1 繪 畫 板<br />

Public Class Form1<br />

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Me.Paint<br />

Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />

End Sub<br />

End Class<br />

Dim g = e.Graphics<br />

'用預設深藍色畫筆畫矩形<br />

g.DrawRectangle(Pens.DarkTurquoise, 10, 10, 40, 60)<br />

Dim BigPen = New Pen(Color.RosyBrown, 3) '建立寬度為 3 的筆<br />

g.DrawRectangle(BigPen, 60, 80, 40, 60)<br />

Dim BiggerPen = New Pen(Color.Khaki, 9) '建立寬度為 9 的筆<br />

g.DrawRectangle(BiggerPen, 110, 150, 40, 60)<br />

g.DrawLine(Pens.DeepPink, 0, 0, 160, 220)<br />

g.DrawLine(Pens.DeepPink, New Point(0, 220), New Point(160, 0))<br />

g.DrawEllipse(Pens.Red, 200, 150, 200, 100)<br />

Dim p1 = New Point(300, 10)<br />

Dim p2 = New Point(200, 60)<br />

Dim p3 = New Point(400, 60)<br />

Dim p4 = New Point(250, 140)<br />

Dim p5 = New Point(350, 140)<br />

g.DrawLine(Pens.ForestGreen, p1, p2)<br />

g.DrawLine(Pens.ForestGreen, p1, p3)<br />

g.DrawLine(Pens.ForestGreen, p2, p4)<br />

g.DrawLine(Pens.ForestGreen, p3, p5)<br />

g.DrawLine(Pens.ForestGreen, p4, p5)<br />

Form2 塗 鴉 牆<br />

Public Class Form2<br />

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Private Sub Form2_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />

38


Me.Paint<br />

Dim width = Me.ClientSize.Width / 10 '分別取得表單寬、高的十分之ㄧ<br />

Dim height = Me.ClientSize.Height / 10 '分別取得表單寬、高的十分之ㄧ<br />

'宣告包含 8 種顏色比刷的陣列<br />

Dim mybrushes() = {Brushes.Red, Brushes.Orange, _<br />

Randomize() '設定亂數種子<br />

Brushes.Yellow, Brushes.Green, _<br />

Brushes.Blue, Brushes.Indigo, _<br />

Brushes.Purple, Brushes.White}<br />

For i = 1 To 9 '變更 X 座標的迴圈<br />

Next<br />

End Sub<br />

For j = 0 To 9 '變更 Y 座標的迴圈<br />

Next<br />

Dim index = Fix(Rnd() * 8) '第一個亂數決定顏色及位置<br />

Dim size = Fix(Rnd() * width) + 1 '第二個亂數決定圓形大小<br />

Dim rect = New Rectangle(i * width + index, _<br />

j * height + index, _<br />

size, size)<br />

e.Graphics.FillEllipse(mybrushes(index), rect)<br />

Private Sub Form2_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged<br />

End Sub<br />

End Class<br />

Me.Invalidate() '當表單大小改變時,就請表單重畫<br />

Form3 圖 片 填 滿 表 單<br />

Public Class Form3<br />

Dim img As Image<br />

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

Try<br />

End Sub<br />

img = Image.FromFile("..\..\sample.jpg")<br />

Catch ex As Exception<br />

MsgBox(ex.Message) '載入失敗即結束程式<br />

End<br />

End Try<br />

Private Sub Form3_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles<br />

Me.MouseClick<br />

If e.Button = Windows.Forms.MouseButtons.Left Then<br />

39


End Sub<br />

img.RotateFlip(RotateFlipType.Rotate270FlipNone)<br />

ElseIf e.Button = Windows.Forms.MouseButtons.Right Then<br />

End If<br />

img.RotateFlip(RotateFlipType.Rotate90FlipNone)<br />

Me.Invalidate() '旋轉圖片後,請表單重畫<br />

Private Sub Form3_Paint(ByVal sender As Object, ByVal e As<br />

System.Windows.Forms.PaintEventArgs) Handles Me.Paint<br />

End Sub<br />

'以填滿工作區的方式顯示圖片<br />

e.Graphics.DrawImage(img, 0, 0, Me.ClientSize.Width, _<br />

Me.ClientSize.Height)<br />

Private Sub Form3_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged<br />

End Sub<br />

End Class<br />

Me.Invalidate() '請表單重畫<br />

EX1 依 輸 入 大 小 畫 圓 且 變 色<br />

Public Class EX1<br />

Dim a As Integer<br />

Private Sub EX1_Load(ByVal sender As System.Object, ByVal e<br />

As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Private Sub EX1_Paint(ByVal sender As Object, ByVal e As<br />

System.Windows.Forms.PaintEventArgs) Handles Me.Paint<br />

End Sub<br />

Dim g = e.Graphics<br />

g.DrawRectangle(Pens.Black, 10, 10, 102, 102)<br />

g.FillRectangle(Brushes.White, 11, 11, 100, 100)<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Dim g = Me.CreateGraphics()<br />

g.FillEllipse(Brushes.Pink, 150, 10, a * 2, a * 2)<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

End Sub<br />

a = Val(TextBox1.Text)<br />

Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

RadioButton1.CheckedChanged<br />

40


End Sub<br />

Dim g = Me.CreateGraphics()<br />

g.FillEllipse(Brushes.Red, 150, 10, a * 2, a * 2)<br />

Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

RadioButton2.CheckedChanged<br />

End Sub<br />

Dim g = Me.CreateGraphics()<br />

g.FillEllipse(Brushes.Orange, 150, 10, a * 2, a * 2)<br />

Private Sub RadioButton3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

RadioButton3.CheckedChanged<br />

End Sub<br />

Dim g = Me.CreateGraphics()<br />

g.FillEllipse(Brushes.Yellow, 150, 10, a * 2, a * 2)<br />

Private Sub RadioButton4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

RadioButton4.CheckedChanged<br />

End Sub<br />

End Class<br />

Dim g = Me.CreateGraphics()<br />

g.FillEllipse(Brushes.Green, 150, 10, a * 2, a * 2)<br />

EX2 音 樂 播 放 器<br />

Public Class EX2<br />

Private Sub EX2_Load(ByVal sender As Object, ByVal<br />

e As System.EventArgs) Handles Me.Load<br />

False<br />

End Sub<br />

'不使用自動播放功能<br />

'AxWindowsMediaPlayer1.settings.autoStart =<br />

'指定音樂檔路徑<br />

'AxWindowsMediaPlayer1.URL = "\CH11\music.wma"<br />

Private Sub Button1_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles<br />

Button1.Click<br />

End Sub<br />

AxWindowsMediaPlayer1.Ctlcontrols.play()<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

AxWindowsMediaPlayer1.Ctlcontrols.pause()<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

41


End Sub<br />

AxWindowsMediaPlayer1.Ctlcontrols.stop()<br />

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />

End Sub<br />

AxWindowsMediaPlayer1.Ctlcontrols.fastReverse()<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

End Sub<br />

AxWindowsMediaPlayer1.Ctlcontrols.fastForward()<br />

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />

End Sub<br />

If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then<br />

End If<br />

AxWindowsMediaPlayer1.URL = OpenFileDialog1.FileName<br />

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />

End Sub<br />

End Class<br />

AxWindowsMediaPlayer1.fullScreen = True<br />

CH11-1<br />

Form1 依 個 人 喜 好 畫 圖<br />

Public Class Form1<br />

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles ComboBox1.SelectedIndexChanged, ComboBox2.SelectedIndexChanged<br />

If ComboBox2.SelectedIndex = -1 Then<br />

Else<br />

MsgBox("請記得選擇大小", , "")<br />

Refresh()<br />

Dim g As Graphics = Me.CreateGraphics<br />

Dim size% = ComboBox2.SelectedItem<br />

Dim pointx(9), pointy(9) As Integer<br />

Dim i, j, x, y As Integer<br />

x = Me.ClientSize.Width / 2<br />

y = Me.ClientSize.Height / 2<br />

For i = 0 To ComboBox1.SelectedItem - 1<br />

Next<br />

pointx(i) = x + size * Math.Sin((360 / ComboBox1.SelectedItem) * i * Math.PI / 180)<br />

pointy(i) = y + size * Math.Cos((360 / ComboBox1.SelectedItem) * i * Math.PI / 180)<br />

42


End Sub<br />

End Class<br />

End If<br />

For i = 0 To ComboBox1.SelectedItem - 1<br />

Next<br />

For j = 0 To ComboBox1.SelectedItem - 1<br />

Next<br />

CH12<br />

g.DrawLine(Pens.Black, pointx(i), pointy(i), pointx(j), pointy(j))<br />

Form1 多 功 能 表 單<br />

Public Class Form1<br />

Dim x%<br />

Private Sub 放大ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

放大ToolStripMenuItem.Click<br />

End Sub<br />

Me.Width *= 1.2<br />

Me.Height *= 1.2<br />

Private Sub 縮小ToolStripMenuItem_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles 縮小<br />

ToolStripMenuItem.Click<br />

End Sub<br />

Me.Width *= 0.8<br />

Me.Height *= 0.8<br />

Private Sub 還原ToolStripMenuItem_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles 還原ToolStripMenuItem.Click<br />

End Sub<br />

Me.Width *= 300<br />

Me.Height *= 300<br />

Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem3.Click<br />

End Sub<br />

x = 200<br />

Me.Invalidate()<br />

ToolStripMenuItem4.Checked = False<br />

ToolStripMenuItem5.Checked = False<br />

Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

43


ToolStripMenuItem4.Click<br />

End Sub<br />

x = 300<br />

Me.Invalidate()<br />

ToolStripMenuItem3.Checked = False<br />

ToolStripMenuItem5.Checked = False<br />

Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem5.Click<br />

End Sub<br />

Me.Paint<br />

x = 400<br />

Me.Invalidate()<br />

ToolStripMenuItem3.Checked = False<br />

ToolStripMenuItem4.Checked = False<br />

Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />

End Sub<br />

Dim g = e.Graphics<br />

g.Clear(Me.BackColor)<br />

g.FillEllipse(Brushes.Black, 10, 60, x, x)<br />

Private Sub RedToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

RedToolStripMenuItem.Click<br />

End Sub<br />

Me.BackColor = Color.Red<br />

Private Sub GreenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

GreenToolStripMenuItem.Click<br />

End Sub<br />

Me.BackColor = Color.Green<br />

Private Sub BlueToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

BlueToolStripMenuItem.Click<br />

End Sub<br />

Me.BackColor = Color.Blue<br />

Private Sub 一般ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

一般ToolStripMenuItem.Click<br />

End Sub<br />

Label1.Font = New Font(Label1.Font, FontStyle.Regular)<br />

粗體ToolStripMenuItem.Checked = False<br />

斜體ToolStripMenuItem.Checked = False<br />

粗斜體ToolStripMenuItem.Checked = False<br />

Private Sub 粗體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

粗體ToolStripMenuItem.Click<br />

44


End Sub<br />

Label1.Font = New Font(Label1.Font, FontStyle.Bold)<br />

Private Sub 斜體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

斜體ToolStripMenuItem.Click<br />

End Sub<br />

Label1.Font = New Font(Label1.Font, FontStyle.Italic)<br />

Private Sub 粗斜體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 粗斜體ToolStripMenuItem.Click<br />

End Sub<br />

Label1.Font = New Font(Label1.Font, FontStyle.Bold Or FontStyle.Italic)<br />

Private Sub ToolStripMenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem7.Click<br />

End Sub<br />

Label1.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />

Private Sub ToolStripMenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem8.Click<br />

End Sub<br />

Label1.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

Private Sub ToolStripMenuItem9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem9.Click<br />

End Sub<br />

Label1.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />

Private Sub 標楷體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 標楷體ToolStripMenuItem.Click<br />

End Sub<br />

Label1.Font = New Font("標楷體", Label1.Font.Size, Label1.Font.Style)<br />

Private Sub 新細明體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 新細明體ToolStripMenuItem.Click<br />

End Sub<br />

Label1.Font = New Font("新細明體", Label1.Font.Size, Label1.Font.Style)<br />

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton1.Click<br />

End Sub<br />

Label1.ForeColor = Color.LightGreen<br />

Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton2.Click<br />

End Sub<br />

Label1.ForeColor = Color.Brown<br />

Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton3.Click<br />

45


End Sub<br />

Label1.ForeColor = Color.Purple<br />

Private Sub ToolStripLabel1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripLabel1.Click<br />

End Sub<br />

Shell("C:\WINDOWS\NOTEPAD.exe", AppWinStyle.NormalFocus)<br />

Private Sub ToolStripLabel2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripLabel2.Click<br />

End Sub<br />

End Class<br />

Shell("C:\WINDOWS\system32\calc.exe", AppWinStyle.NormalFocus)<br />

EX1 多 功 能 表 單 、 長 度 、 重 量 換 算<br />

Public Class EX1<br />

Private Sub 公尺英尺ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 公尺英尺ToolStripMenuItem.Click<br />

End Sub<br />

TextBox2.Text = Val(TextBox1.Text) * 3.2808<br />

Private Sub 英尺公尺ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 英尺公尺ToolStripMenuItem.Click<br />

End Sub<br />

TextBox1.Text = Val(TextBox2.Text) / 3.2808<br />

Private Sub 公斤英磅ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 公斤英磅ToolStripMenuItem.Click<br />

End Sub<br />

TextBox4.Text = Val(TextBox3.Text) * 2.205<br />

Private Sub 英磅公斤ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 英磅公斤ToolStripMenuItem.Click<br />

End Sub<br />

TextBox3.Text = Val(TextBox4.Text) / 2.205<br />

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton1.Click<br />

Label1.ForeColor = Color.Red<br />

Label2.ForeColor = Color.Red<br />

Label3.ForeColor = Color.Red<br />

Label4.ForeColor = Color.Red<br />

Label5.ForeColor = Color.Red<br />

Label6.ForeColor = Color.Red<br />

TextBox1.ForeColor = Color.Red<br />

46


End Sub<br />

TextBox2.ForeColor = Color.Red<br />

TextBox3.ForeColor = Color.Red<br />

TextBox4.ForeColor = Color.Red<br />

Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton2.Click<br />

End Sub<br />

Label1.ForeColor = Color.Orange<br />

Label2.ForeColor = Color.Orange<br />

Label3.ForeColor = Color.Orange<br />

Label4.ForeColor = Color.Orange<br />

Label5.ForeColor = Color.Orange<br />

Label6.ForeColor = Color.Orange<br />

TextBox1.ForeColor = Color.Orange<br />

TextBox2.ForeColor = Color.Orange<br />

TextBox3.ForeColor = Color.Orange<br />

TextBox4.ForeColor = Color.Orange<br />

Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton3.Click<br />

End Sub<br />

Label1.ForeColor = Color.Green<br />

Label2.ForeColor = Color.Green<br />

Label3.ForeColor = Color.Green<br />

Label4.ForeColor = Color.Green<br />

Label5.ForeColor = Color.Green<br />

Label6.ForeColor = Color.Green<br />

TextBox1.ForeColor = Color.Green<br />

TextBox2.ForeColor = Color.Green<br />

TextBox3.ForeColor = Color.Green<br />

TextBox4.ForeColor = Color.Green<br />

Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem2.Click<br />

ToolStripStatusLabel1.text = "字型大小:12"<br />

Label1.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

Label2.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

Label3.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

Label4.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

Label5.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

Label6.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

TextBox1.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

47


End Sub<br />

TextBox2.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

TextBox3.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

TextBox4.Font = New Font(Label1.Font.Name, 12, Label1.Font.Style)<br />

Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem3.Click<br />

End Sub<br />

ToolStripStatusLabel1.Text = "字型大小:16"<br />

Label1.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

Label2.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

Label3.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

Label4.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

Label5.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

Label6.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

TextBox1.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

TextBox2.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

TextBox3.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

TextBox4.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />

Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripMenuItem4.Click<br />

End Sub<br />

End Class<br />

ToolStripStatusLabel1.Text = "字型大小:18"<br />

Label1.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

Label2.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

Label3.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

Label4.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

Label5.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

Label6.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

TextBox1.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

TextBox2.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

TextBox3.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

TextBox4.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />

CH13<br />

Form1 檔 案 總 管<br />

Public Class Form1<br />

48


Dim FileChanged As Boolean = False '用以記錄文字是否被修改<br />

Private Sub AskSave()<br />

End Sub<br />

'檢查編輯中的內容是否已修改且未存檔<br />

If FileChanged = True Then<br />

End If<br />

'用訊息窗詢問是否要立即存檔<br />

If MsgBox("是否要儲存檔案?", MsgBoxStyle.YesNo) = _<br />

End If<br />

MsgBoxResult.Yes Then<br />

SaveFile() '呼叫自訂的存檔程序<br />

Private Sub 儲存ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

儲存ToolStripMenuItem.Click<br />

End Sub<br />

SaveFile()<br />

FileChanged = False<br />

Me.Text = SaveFileDialog1.FileName<br />

Private Sub 開啟ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

開啟ToolStripMenuItem.Click<br />

'呼叫自訂程序,檢查編碼中的內容是否須先存檔<br />

AskSave()<br />

'設定要使用的檔案類型<br />

OpenFileDialog1.Filter = "純文字檔(*.text)|*.text|" & _<br />

"Big5文字檔(*.text)|*.text|" & _<br />

"所有檔案(*.*)|*.*"<br />

'顯示交談窗並檢查使用者是否按確定鈕<br />

If OpenFileDialog1.ShowDialog() = _<br />

Windows.Forms.DialogResult.OK Then<br />

Try<br />

'若選擇第2種檔案類型(Big5文字檔)<br />

If OpenFileDialog1.FilterIndex = 2 Then<br />

Else<br />

End If<br />

'讀取檔案並顯示於控制項中<br />

TextBox1.Text = My.Computer.FileSystem. _<br />

ReadAllText(OpenFileDialog1.FileName, _<br />

System.Text.Encoding.GetEncoding(950))<br />

'以預設方式讀取檔案並顯示於控制項中<br />

TextBox1.Text = My.Computer.FileSystem. _<br />

ReadAllText(OpenFileDialog1.FileName)<br />

49


End Sub<br />

End If<br />

'將檔案名稱顯示於視窗標題欄<br />

TextBox1.Text = My.Computer.FileSystem. _<br />

ReadAllText(OpenFileDialog1.FileName)<br />

Me.Text = OpenFileDialog1.SafeFileName<br />

FileChanged = False<br />

Catch ex As Exception<br />

End Try<br />

MsgBox(ex.Message)<br />

Private Sub SaveFile()<br />

End Sub<br />

If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then<br />

Try<br />

End If<br />

My.Computer.FileSystem _<br />

.WriteAllText(SaveFileDialog1.FileName, _<br />

Catch ex As Exception<br />

End Try<br />

MsgBox(ex.Message)<br />

TextBox1.Text, False)<br />

Private Sub Textbox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

End Sub<br />

If (FileChanged = False) Then<br />

End If<br />

FileChanged = True<br />

Me.Text &= "*"<br />

Private Sub 離開ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

離開ToolStripMenuItem.Click<br />

AskSave()<br />

End<br />

End Sub<br />

Private Sub 關閉ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

關閉ToolStripMenuItem.Click<br />

End Sub<br />

AskSave() '呼叫自訂程序,檢查編輯中的妹戎是否須先存檔<br />

Me.Text = "未命名" '變更視窗標題欄<br />

TextBox1.Text = "" '清空Editor控制項的內容<br />

FileChanged = False '將檔案修改狀態設為『未修改』<br />

50


End Class<br />

Form2 簡 易 檔 案 總 管<br />

ublic Class Form2<br />

Dim writer As System.IO.StreamWriter '代表紀錄檔的寫檔務件<br />

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

If OpenFileDialog1.ShowDialog() = _<br />

Windows.Forms.DialogResult.OK Then<br />

Try<br />

End If<br />

'讀取檔案內容<br />

TextBox1.Text = My.Computer.FileSystem _<br />

.ReadAllText(OpenFileDialog1.FileName)<br />

Logging("讀取檔案:" & OpenFileDialog1.FileName)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox(ex.Message)<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

If SaveFileDialog1.ShowDialog() = _<br />

Windows.Forms.DialogResult.OK Then<br />

Try<br />

End If<br />

'儲存檔案<br />

My.Computer.FileSystem.WriteAllText _<br />

(SaveFileDialog1.FileName, TextBox1.Text, False)<br />

Logging("儲存檔案:" & SaveFileDialog1.FileName)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox(ex.Message)<br />

Sub Logging(ByVal message As String)<br />

End Sub<br />

End Class<br />

'在訊息前加上目前時間並寫入紀錄檔<br />

writer.WriteLine(Now & "," & message)<br />

51


CH13-1<br />

Form1 檔 案 總 管<br />

Public Class Form1<br />

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

TextBox1.Text = CurDir()<br />

TextBox1.SelectionStart = Len(TextBox1.Text)<br />

Function formatDir(ByVal strDir As String)<br />

If Microsoft.VisualBasic.Right(strDir, 1) "\" Then<br />

End If<br />

strDir &= "\"<br />

Return strDir<br />

End Function<br />

Sub Display()<br />

ChDir(TextBox1.Text)<br />

Dim strItem$<br />

ListBox1.Items.Clear()<br />

ListBox1.Items.Clear()<br />

strItem = Dir("*.*", 16 + 2)<br />

Do Until strItem = ""<br />

Loop<br />

End Sub<br />

If (GetAttr(strItem) And vbDirectory) = 16 Then<br />

Else<br />

End If<br />

ListBox1.Items.Add(strItem)<br />

ListBox2.Items.Add(strItem)<br />

strItem = Dir()<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

Display()<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

ChDir("..")<br />

TextBox1.Text = CurDir()<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

52


'TextBox1.Text = formatDir(TextBox1.Text)<br />

Try<br />

End Sub<br />

MkDir(TextBox1.Text)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox("該目錄已經存在!", 0 + 48, "")<br />

Display()<br />

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />

TextBox1.Text = formatDir(TextBox1.Text)<br />

Dim CurDIR$<br />

CurDIR = TextBox1.Text & ListBox1.SelectedItem<br />

Try<br />

End Sub<br />

My.Computer.FileSystem.DeleteDirectory(CurDIR, FileIO.DeleteDirectoryOption.DeleteAllContents)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox("該目錄已不存在!", 0 + 48, "")<br />

Display()<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

TextBox1.Text = formatDir(TextBox1.Text)<br />

Dim File$<br />

File = TextBox1.Text & ListBox2.SelectedItem<br />

Try<br />

End Sub<br />

End Class<br />

My.Computer.FileSystem.DeleteFile(File)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox("該檔案已不存在或無法刪除!", 0 + 48, "")<br />

Display()<br />

CH14-1<br />

Form1 書 籍 目 錄<br />

Public Class Form1<br />

Private Sub 書籍<br />

BindingNavigatorSaveItem_Click(ByVal sender As<br />

53


System.Object, ByVal e As System.EventArgs) Handles 書籍BindingNavigatorSaveItem.Click<br />

End Sub<br />

Me.Validate()<br />

Me.書籍BindingSource.EndEdit()<br />

Me.TableAdapterManager.UpdateAll(Me.產品DataSet)<br />

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

End Class<br />

'TODO: 這行程式碼會將資料載入 '產品DataSet.書籍' 資料表。您可以視需要進行移動或移除。<br />

Me.書籍TableAdapter.Fill(Me.產品DataSet.書籍)<br />

Form2 書 籍 目 錄<br />

Public Class Form2<br />

Private Sub TshirtBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles TshirtBindingNavigatorSaveItem.Click<br />

End Sub<br />

Me.Validate()<br />

Me.TshirtBindingSource.EndEdit()<br />

Me.TableAdapterManager.UpdateAll(Me.成衣DataSet)<br />

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

End Class<br />

'TODO: 這行程式碼會將資料載入 '成衣DataSet.Tshirt' 資料表。您可以視需要進行移動或移除。<br />

Me.TshirtTableAdapter.Fill(Me.成衣DataSet.Tshirt)<br />

Form3 書 籍 目 錄<br />

Public Class Form3<br />

Private Sub 書籍BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 書籍BindingNavigatorSaveItem.Click<br />

54


End Sub<br />

Me.Validate()<br />

Me.書籍BindingSource.EndEdit()<br />

Me.TableAdapterManager.UpdateAll(Me.產品DataSet1)<br />

'Me.書籍TableAdapter.Update(Me.產品DataSet1.書籍) Update的對象為產品資料集裡的虛擬書籍資料表<br />

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

End Class<br />

'TODO: 這行程式碼會將資料載入 '產品DataSet1.書籍' 資料表。您可以視需要進行移動或移除。<br />

Me.書籍TableAdapter.Fill(Me.產品DataSet1.書籍)<br />

Form4 書 籍 目 錄<br />

Public Class Form4<br />

Private Sub Form4_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs)<br />

Handles Me.FormClosing<br />

End Sub<br />

DataGridView1.EndEdit()<br />

書籍TableAdapter.Update(產品DataSet.書籍)<br />

Private Sub Form4_Load(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles<br />

MyBase.Load<br />

'TODO: 這行程式碼會將資料載入 '產品DataSet.<br />

書籍' 資料表。您可以視需要進行移動或移除。<br />

籍)<br />

End Sub<br />

End Class<br />

Me.書籍TableAdapter.Fill(Me.產品DataSet.書<br />

55


Form5 書 籍 目 錄<br />

Public Class Form5<br />

Private Sub 書籍BindingNavigatorSaveItem_Click(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs) Handles 書籍<br />

BindingNavigatorSaveItem.Click<br />

End Sub<br />

Me.Validate()<br />

Me.書籍BindingSource.EndEdit()<br />

Me.TableAdapterManager.UpdateAll(Me.產品DataSet1)<br />

Private Sub Form5_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs)<br />

Handles Me.FormClosing<br />

End Sub<br />

DataGridView1.EndEdit()<br />

書籍TableAdapter.Update(產品DataSet1.書籍)<br />

Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

End Class<br />

'TODO: 這行程式碼會將資料載入 '產品DataSet1.書籍' 資料表。您可以視需要進行移動或移除。<br />

Me.書籍TableAdapter.Fill(Me.產品DataSet1.書籍)<br />

Form6 成 衣 目 錄<br />

Public Class Form6<br />

Private Sub TshirtBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles TshirtBindingNavigatorSaveItem.Click<br />

成衣DataSet1)<br />

End Sub<br />

Me.Validate()<br />

Me.TshirtBindingSource.EndEdit()<br />

Me.TableAdapterManager.UpdateAll(Me.<br />

Private Sub Form6_Load(ByVal sender As<br />

System.Object, ByVal e As System.EventArgs)<br />

Handles MyBase.Load<br />

'TODO: 這行程式碼會將資料載入 '成衣<br />

DataSet1.Tshirt' 資料表。您可以視需要進行移動或移除。<br />

End Sub<br />

End Class<br />

Me.TshirtTableAdapter.Fill(Me.成衣DataSet1.Tshirt)<br />

56


Form7 查 詢 書 籍 系 統<br />

Public Class Form7<br />

Private Sub 書籍BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 書籍BindingNavigatorSaveItem.Click<br />

End Sub<br />

Me.Validate()<br />

Me.書籍BindingSource.EndEdit()<br />

Me.TableAdapterManager.UpdateAll(Me.產品DataSet1)<br />

Private Sub Form7_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

End Sub<br />

'TODO: 這行程式碼會將資料載入 '產品DataSet1.類別' 資料表。您可以視需要進行移動或移除。<br />

Me.類別TableAdapter.Fill(Me.產品DataSet1.類別)<br />

'TODO: 這行程式碼會將資料載入 '產品DataSet1.書籍' 資料表。您可以視需要進行移動或移除。<br />

Me.書籍TableAdapter.Fill(Me.產品DataSet1.書籍)<br />

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton1.Click<br />

有檔案|*.*"<br />

片欄位中<br />

End Sub<br />

'設定開啟就檔交談窗中的檔案類型選單<br />

OpenFileDialog1.filter = _<br />

"圖檔|*.jpg;*.gif;*.jpeg;*.png;*.tif|所<br />

'如果在交談窗中選取了圖檔,則將之載入到圖<br />

If openfiledialog1.showdialog() = _<br />

System.Windows.Forms.DialogResult.OK Then<br />

End If<br />

圖片PictureBox.Image = New Bitmap(openfiledialog1.filename)<br />

Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

ToolStripButton2.Click<br />

End Sub<br />

End Class<br />

圖片PictureBox.Image = Nothing<br />

Exam1<br />

Form1 簡 易 計 算 機<br />

57


Public Class Form1<br />

Dim a, b As Integer<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Label4.Text = "+"<br />

a = Val(TextBox1.Text) : b = Val(TextBox2.Text)<br />

TextBox3.Text = a + b<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

Label4.Text = "-"<br />

a = Val(TextBox1.Text) : b = Val(TextBox2.Text)<br />

TextBox3.Text = a - b<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

End Sub<br />

Label4.Text = "X"<br />

a = Val(TextBox1.Text) : b = Val(TextBox2.Text)<br />

TextBox3.Text = a * b<br />

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />

End Sub<br />

End Class<br />

Label4.Text = "÷"<br />

a = Val(TextBox1.Text) : b = Val(TextBox2.Text)<br />

TextBox3.Text = a / b<br />

Form2 BMI與 三 角 形 面 積<br />

Public Class Form2<br />

Dim ans 'ans是全域變數,才能在三個副程式區段都發揮作用<br />

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

ans = MsgBox("您快樂嗎?", 4 + 32, "問答題") 'MsgBox( )接收到資料傳給ans<br />

If ans = 6 Then<br />

Else<br />

End If<br />

Label1.Text = "請輸入體重(公斤)="<br />

Label2.Text = "請輸入身高(公分)="<br />

Me.Text = "計算BMI值"<br />

Label1.Text = "請輸入底 ="<br />

Label2.Text = "請輸入高 ="<br />

Me.Text = "計算三角形面積"<br />

58


End Sub<br />

Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click<br />

If MsgBoxStyle.DefaultButton1 Then<br />

Else<br />

End Sub<br />

End If<br />

Label3.Text = "BMI值="<br />

Label3.Text = "三角形面積="<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

If ans = 6 Then<br />

Else<br />

End Sub<br />

End If<br />

Label3.Text = "BMI值 = " & Math.Round(Val(TextBox1.Text) / (Val(TextBox2.Text) / 100) ^ 2, 1)<br />

Label3.Text = "三角形面積 = " & Math.Round((Val(TextBox1.Text) * Val(TextBox2.Text) / 2), 1)<br />

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox2.TextChanged<br />

If ans = 6 Then<br />

Else<br />

End Sub<br />

End Class<br />

End If<br />

Label3.Text = "BMI值 = " & Math.Round(Val(TextBox1.Text) / (Val(TextBox2.Text) / 100) ^ 2, 1)<br />

Label3.Text = "三角形面積 = " & Math.Round((Val(TextBox1.Text) * Val(TextBox2.Text) / 2), 1)<br />

Exam2<br />

Form1 計 算 單 數 值<br />

59


Public Class Form1<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

End Sub<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim a, i As Integer<br />

For i = 1 To TextBox1.Text Step 2<br />

Next<br />

End Sub<br />

End Class<br />

a = a + i<br />

MsgBox("單數值之和:" & a)<br />

60


Form2 電 度 換 算 表<br />

Public Class Form2<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim a%, fee%<br />

a = CInt(Val(TextBox1.Text))<br />

If a > 330 Then<br />

Else<br />

End Sub<br />

End Class<br />

End If<br />

fee = 2.1 * 110 + 2.7 * 220 + 3.6 * (a - 330)<br />

If a > 110 Then<br />

Else<br />

End If<br />

fee = 2.1 * 110 + 2.7 * (a - 110)<br />

If a > 40 Then<br />

Else<br />

End If<br />

fee = 2.1 * a<br />

fee = 2.1 * 40<br />

Label2.Text = "電費共 " & CInt(fee) & " 元"<br />

Exam3<br />

Form1 費 氏 函 數<br />

Public Class Form1<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal<br />

e As System.EventArgs) Handles Button1.Click<br />

If Val(TextBox1.Text) < 1 Then<br />

Else<br />

End Sub<br />

End If<br />

MsgBox("請輸入大於0的數", 0 + 16, "錯誤")<br />

TextBox1.Text = ""<br />

TextBox2.Text = Fib(Val(TextBox1.Text))<br />

Function Fib(ByVal K As Integer) As Decimal 'Decimal是最大的正整數數值型態了<br />

61


If K


End Sub<br />

End Class<br />

Exam4<br />

Form1 輸 入 英 文 字 母 全 為 大 寫<br />

Public Class Form1<br />

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)<br />

Handles TextBox1.KeyPress<br />

End Sub<br />

Select Case e.KeyChar<br />

Case "A" To "Z"<br />

End Select<br />

TextBox1.AppendText(Chr((AscW(e.KeyChar) + 32)))<br />

e.Handled = True '讓控制項不再出現大寫字母<br />

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

TextBox1.TextChanged<br />

End Sub<br />

End Class<br />

Form2 畫 圓 加 十 字<br />

Public Class Form2<br />

Me.Paint<br />

Private Sub Form2_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />

Dim k = e.Graphics<br />

k.FillEllipse(Brushes.Black, 0, 0,<br />

Me.ClientSize.Width, Me.ClientSize.Height)<br />

k.FillEllipse(Brushes.White, 2, 2,<br />

Me.ClientSize.Width - 4, Me.ClientSize.Height - 4)<br />

'k.DrawEllipse(Pens.Black, f, g, h)<br />

Dim a = New Point(ClientSize.Width / 2, 0)<br />

Dim b = New Point(ClientSize.Width / 2,<br />

ClientSize.Height)<br />

Dim c = New Point(0, ClientSize.Height / 2)<br />

Dim d = New Point(ClientSize.Width,<br />

ClientSize.Height / 2)<br />

k.DrawLine(Pens.Black, a, b)<br />

63


End Sub<br />

k.DrawLine(Pens.Black, c, d)<br />

Private Sub Form2_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged<br />

End Sub<br />

End Class<br />

Me.Invalidate()<br />

Form3 簡 易 音 樂 播 放 器<br />

Public Class Form3<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

Select Case ListBox1.SelectedIndex<br />

Case 0<br />

Case 1<br />

Case 2<br />

AxWindowsMediaPlayer1.URL = "c:\Exam4\1.mp3"<br />

AxWindowsMediaPlayer1.Ctlcontrols.play()<br />

AxWindowsMediaPlayer1.URL = "c:\Exam4\2.mp3"<br />

AxWindowsMediaPlayer1.Ctlcontrols.play()<br />

AxWindowsMediaPlayer1.URL = "c:\Exam4\3.mp3"<br />

AxWindowsMediaPlayer1.Ctlcontrols.play()<br />

Case Else<br />

End Select<br />

MsgBox("未選取檔案!", 0 + 64, "注意")<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal<br />

e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

AxWindowsMediaPlayer1.Ctlcontrols.stop()<br />

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick<br />

End Sub<br />

End Class<br />

Label1.Text = AxWindowsMediaPlayer1.Ctlcontrols.currentPositionString<br />

Exam5<br />

Form1 保 護 螢 幕 程 式<br />

Public Class Form1<br />

64


Dim x%, y%, xd%, yd%<br />

Dim g As Graphics<br />

Dim brush As SolidBrush<br />

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick<br />

Dim font As Font = New Font("標楷體", 22)<br />

g = Me.CreateGraphics<br />

Randomize()<br />

Select Case Int(Rnd() * 10)<br />

Case 0<br />

Case 1<br />

Case 2<br />

Case 3<br />

Case 4<br />

Case 5<br />

Case 6<br />

Case 7<br />

Case 8<br />

Case 9<br />

End Select<br />

g.Clear(Color.LightSkyBlue)<br />

g.Clear(Color.LightGreen)<br />

g.Clear(Color.Cyan)<br />

g.Clear(Color.Chocolate)<br />

g.Clear(Color.Plum)<br />

g.Clear(Color.Pink)<br />

g.Clear(Color.Aqua)<br />

g.Clear(Color.DarkOrange)<br />

g.Clear(Color.Azure)<br />

g.Clear(Color.Beige)<br />

Select Case Int(Rnd() * 10)<br />

Case 0<br />

Case 1<br />

Case 2<br />

Case 3<br />

Case 4<br />

brush = New SolidBrush(Color.LightSalmon)<br />

brush = New SolidBrush(Color.Purple)<br />

brush = New SolidBrush(Color.Red)<br />

brush = New SolidBrush(Color.PeachPuff)<br />

brush = New SolidBrush(Color.DarkGreen)<br />

65


Case 5<br />

Case 6<br />

Case 7<br />

Case 8<br />

Case 9<br />

End Select<br />

brush = New SolidBrush(Color.DarkBlue)<br />

brush = New SolidBrush(Color.Brown)<br />

brush = New SolidBrush(Color.Turquoise)<br />

brush = New SolidBrush(Color.PaleVioletRed)<br />

brush = New SolidBrush(Color.Teal)<br />

g.DrawString("展現變化莫測的色彩", font, brush, x, y)<br />

If xd = 1 Then<br />

Else<br />

End If<br />

x -= 30<br />

x += 30<br />

If x > (Me.ClientSize.Width - 250) Then<br />

End If<br />

xd = 1<br />

If x < 1 Then<br />

End If<br />

xd = 0<br />

If yd = 1 Then<br />

Else<br />

End Sub<br />

End If<br />

y -= 15<br />

y += 15<br />

If y > (Me.ClientSize.Height - 30) Then<br />

End If<br />

yd = 1<br />

If y < 1 Then<br />

End If<br />

yd = 0<br />

Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles<br />

Me.MouseClick<br />

End<br />

End Sub<br />

End Class<br />

66


Form2 檔 案 總 管<br />

Public Class Form2<br />

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load<br />

End Sub<br />

TextBox1.Text = CurDir() '傳回當前路徑<br />

TextBox1.SelectionStart = Len(TextBox1.Text)<br />

TextBox1.Focus()<br />

Function formatDir(ByVal strDir As String)<br />

If Microsoft.VisualBasic.Right(strDir, 1) "\" Then<br />

End If<br />

strDir &= "\"<br />

Return strDir<br />

End Function<br />

Sub Display()<br />

ChDir(TextBox1.Text) '先讀取路徑<br />

Dim strItem$<br />

ListBox1.Items.Clear()<br />

ListBox2.Items.Clear()<br />

strItem = Dir("*.*", 18) '連資料夾(16)和隱藏檔(2)都讀取<br />

Do Until strItem = ""<br />

Loop<br />

End Sub<br />

If (GetAttr(strItem) And vbDirectory) = 16 Then<br />

Else<br />

End If<br />

ListBox1.Items.Add(strItem)<br />

ListBox2.Items.Add(strItem)<br />

strItem = Dir()<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

End Sub<br />

Display()<br />

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />

Try<br />

End Sub<br />

MkDir(TextBox1.Text)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox("該目錄已存在!", 0 + 48, "")<br />

67


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

End Sub<br />

ChDir("..")<br />

TextBox1.Text = CurDir()<br />

Display()<br />

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />

End Sub<br />

TextBox1.Text = formatDir(TextBox1.Text)<br />

Dim CurDir$<br />

CurDir = TextBox1.Text & ListBox1.SelectedItem<br />

My.Computer.FileSystem.DeleteDirectory(CurDir, FileIO.DeleteDirectoryOption.DeleteAllContents)<br />

Display()<br />

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />

TextBox1.Text = formatDir(TextBox1.Text)<br />

Dim CurFile$<br />

CurFile = TextBox1.Text & ListBox2.SelectedItem<br />

Try<br />

End Sub<br />

My.Computer.FileSystem.DeleteFile(CurFile)<br />

Catch ex As Exception<br />

End Try<br />

MsgBox("錯誤: 檔案已不存在或無法刪除!", 0 + 48, "")<br />

Display()<br />

Private Sub ListBox1_DoubleClick(ByVal<br />

sender As Object, ByVal e As System.EventArgs)<br />

Handles ListBox1.DoubleClick<br />

TextBox1.Text =<br />

formatDir(TextBox1.Text)<br />

TextBox1.Text = TextBox1.Text &<br />

ListBox1.SelectedItem<br />

End Sub<br />

Display()<br />

Private Sub<br />

ListBox2_SelectedIndexChanged(ByVal sender<br />

As System.Object, ByVal e As System.EventArgs) Handles ListBox2.SelectedIndexChanged<br />

TextBox1.Text = formatDir(TextBox1.Text)<br />

ToolStripStatusLabel1.Text = "檔案大小:" & FileLen(TextBox1.Text & ListBox2.SelectedItem) & " Bytes<br />

" ToolStripStatusLabel2.Text = "修改日期:" & FileDateTime(TextBox1.Text & ListBox2.SelectedItem)<br />

Select Case GetAttr(TextBox1.Text & ListBox2.SelectedItem)<br />

Case 39<br />

68


End Sub<br />

End Class<br />

Case 36<br />

Case 35<br />

Case 34<br />

Case 32<br />

Case 7<br />

Case 6<br />

Case 5<br />

Case 4<br />

Case 3<br />

Case 2<br />

Case 1<br />

End Select<br />

Label4.Text = "檔案屬性:一般、系統、隱藏、唯讀"<br />

Label4.Text = "檔案屬性:一般、系統"<br />

Label4.Text = "檔案屬性:一般、 隱藏、唯讀"<br />

Label4.Text = "檔案屬性:一般、 隱藏"<br />

Label4.Text = "檔案屬性:一般"<br />

Label4.Text = "檔案屬性: 系統、隱藏、唯讀"<br />

Label4.Text = "檔案屬性: 系統、隱藏"<br />

Label4.Text = "檔案屬性: 系統、 唯讀"<br />

Label4.Text = "檔案屬性: 系統"<br />

Label4.Text = "檔案屬性: 隱藏、唯讀"<br />

Label4.Text = "檔案屬性: 隱藏"<br />

Label4.Text = "檔案屬性: 唯讀"<br />

Form3 便 利 貼<br />

Public Class Form3<br />

Dim filename As String = "note.txt"<br />

Private Sub Form3_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs)<br />

Handles Me.FormClosing<br />

End Sub<br />

FileOpen(1, filename, OpenMode.Binary)<br />

FilePut(1, TextBox1.Text) '回存記事內容<br />

FileClose(1)<br />

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />

Dim len%<br />

FileOpen(1, filename, OpenMode.Binary)<br />

69


End Sub<br />

len = LOF(1)<br />

Dim content As New String("", len) '建立長度為len的空字串<br />

FileGet(1, content) '讀取整個檔案的內容,放到content裡<br />

FileClose(1)<br />

TextBox1.Text = content<br />

TextBox1.SelectionStart = len '指定游標停駐點<br />

TextBox1.SelectionLength = 0<br />

My.Computer.FileSystem.DeleteFile(filename) '這是重點,否則舊的東西還會在<br />

Private Sub 字型ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

字型ToolStripMenuItem.Click<br />

End Sub<br />

FontDialog1.ShowColor = True<br />

If FontDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then<br />

End If<br />

TextBox1.Font = FontDialog1.Font<br />

TextBox1.ForeColor = FontDialog1.Color<br />

Private Sub 背景顏色ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />

Handles 背景顏色ToolStripMenuItem.Click<br />

End Sub<br />

End Class<br />

ColorDialog1.AllowFullOpen = False<br />

ColorDialog1.ShowHelp = False<br />

If ColorDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then<br />

End If<br />

TextBox1.BackColor = ColorDialog1.Color<br />

Exam6<br />

Form1 綜 合 計 算<br />

Public Class Form1<br />

Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />

GroupBox1.Enter<br />

End Sub<br />

70


解法<br />

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />

Dim i%, n%<br />

Label5.Text = ""<br />

n = Val(TextBox1.Text)<br />

For i = 2 To n - 1<br />

Next<br />

End Sub<br />

If (gcd(i, n) = 1) Then<br />

End If<br />

Label5.Text &= i & " "<br />

Function gcd(ByVal a, ByVal b) As ULong '遞迴<br />

If b = 0 Then<br />

Else<br />

End If<br />

End Function<br />

Return a<br />

Return gcd(b, a Mod b)<br />

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />

Dim i%, j%, n%<br />

Label6.Text = ""<br />

n = Val(TextBox2.Text)<br />

For i = 1 To n<br />

Next<br />

End Sub<br />

End Class<br />

For j = 1 To i<br />

Next<br />

Label6.Text &= j<br />

Label6.Text &= vbCrLf<br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!