You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Visual Basic2008<br />
學習檔案<br />
班級:資二 1<br />
指導老師:張銘棋<br />
學生:<strong>林欣怡</strong><br />
座號:17
第四章 表單的程式設計<br />
目錄<br />
1.將攝氏溫度轉換為華氏溫度………………………….…..Page4<br />
2.選擇國旗的程式……………………………………….…..Page4<br />
3.攝氏溫度轉華氏溫度………………………………….…..Page5<br />
4.邊框變化……………………………………………….…. Page6<br />
5.按鈕的移動與縮放……………. ……………………….…Page6<br />
6.變換表單背景圖片……………………………………….. Page7<br />
第五章 使用資料<br />
1.計算機……………………………………………………...Page7<br />
2.顯示按鈕時間…………………………………………….. Page9<br />
3.顯示編號………………………………………………….. Page9<br />
第六章 流程控制-選擇性執行程式<br />
1.找出最大值………………………………………….……. Page10<br />
2.點餐計價……………………………………….…………. Page11<br />
3.折扣計算……………………………………………….…. Page12<br />
4.猜數字遊戲……………………………………………….. Page13<br />
5.選擇字體與大小…………………………………….……. Page13<br />
第七章 流程控制-重複執行同一段程式<br />
1.分數統計……………………………………………….…. Page15<br />
2.數字金字塔……………………………………………….. Page15<br />
3.倒數字金字塔………………………………………….…. Page16<br />
4.蟑螂大逃竄……………………………………………….. Page17<br />
5.電子時鐘……………………………………………….…. Page17<br />
第八章 陣列<br />
1. 歌唱成績計算排名…………………………………….…Page18<br />
2. 上下移動按鈕………………………………………….…Page19<br />
3. 餐廳排隊給號系統………………………………….……Page20<br />
4. 成績資料………………………………………………….Page21<br />
5. 主控台輸入資料…………………………………….……Page21<br />
6. 主控台輸入數值資料……………………………….……Page22<br />
7. 成績查詢程式………………………………………….…Page22<br />
8. 綜合所的淨額……………………………………….……Page23<br />
9. 字型設定程式………………………………………….…Page24<br />
Page1
10. 調換程式……………………………………………….. Page24<br />
11. 字型設計……………………………………………….. Page25<br />
第九章 程式與函式<br />
1.比大小……………………………………………….……. Page26<br />
2.重力加速度………………………………………….……. Page27<br />
3.計算階乘………………………………………….………. Page27<br />
4.計算速度……………………………………….…………. Page27<br />
5.整數陣列…………………………………….……………..Page28<br />
6.開獎號碼………………………………….………………..Page28<br />
7.遞回…………………………………….…………………..Page29<br />
8.圓盤張數…………………………….……………………. Page30<br />
第十章 事件驅動程式設計<br />
1.英文字母大寫、千分位符號、滑鼠移入變白色……….. Page30<br />
第十一章 繪圖與多媒體<br />
1.畫圖……………………………………………………..…. Page31<br />
2.播放音樂 …………………………………………………. Page32<br />
3.繪圖…………………………………………………………Page33<br />
4.預設筆刷…………………………………………..………. Page34<br />
5.圖片旋轉……………………………………………...…….Page35<br />
第十二章 視窗介面進階<br />
1.長度、重量轉換………………………………………….... Page35<br />
2.控制字型樣式、大小……………………………………….Page37<br />
第十三章 檔案存取<br />
1. 平均分數程式……………………………………………... Page39<br />
2. 開檔、存檔功能……………………………………………Page41<br />
3. 文字編輯程式………………………………………………Page43<br />
4. 點菜程式……………………………………………………Page44<br />
第十三之一章 檔案存取<br />
1. 顯示資料夾與檔案清單……………………………………Page46<br />
Page2
第十四之一章 設計資料庫程式<br />
考試<br />
Exam1<br />
Exam2<br />
Exam3<br />
Exam4<br />
Exam<br />
Exam6<br />
1.書籍資料庫-1…………………………………………………Page49<br />
2.成衣資料庫…………………………………………………...Page49<br />
3.書籍資料庫-2…………………………………………………Page50<br />
4.書籍資料庫-3…………………………………………………Page50<br />
5.書籍資料庫-4…………………………………………………Page51<br />
6.成衣資料庫.…………………………………………………..Page52<br />
7.查閱欄位……………………………………………………...Page52<br />
1.加減乘除……………………………………………………...Page53<br />
2.購買清單……………………………………………………...Page54<br />
3.計算 BMI 值、三角形面積………………………………….Page55<br />
1.單數值之和…………………………………………………...Page56<br />
2.電費計算……………………………………………………...Page56<br />
1.費氏數列…………………………………………………….. Page57<br />
2.擲骰子比大小……………………………………………….. Page57<br />
1.英文字母大寫變小寫………………………………………...Page58<br />
2.白底黑邊的圓形……………………………………………...Page58<br />
3.MP3 播放器…………………………………………………...Page59<br />
1.螢幕保護程式…………………………………………………Page60<br />
2.顯示資料夾內的子資料夾……………………………………Page62<br />
3.便利貼…………………………………………………………Page64<br />
1. 互質的數、直角三角形、數字相加、身分證號碼………..Page65<br />
Page3
程式碼---17/CH4/EX1<br />
將攝氏溫度互轉為華氏溫度<br />
Public Class EX1<br />
Private Sub EX1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<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 />
Dim a, b As Integer<br />
a = TextBox1.Text<br />
b = a * 9 / 5 + 32<br />
Label2.Text = "攝氏 " & a & " 度 = 華氏 " & b & " 度。"<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Dim b As Integer<br />
Dim a As Single<br />
b = TextBox1.Text<br />
a = Math.Round((b - 32) * 5 / 9, 2)<br />
Label2.Text = "華氏 " & b & " 度 = 攝氏 " & a & " 度。"<br />
End Sub<br />
End Class<br />
程式碼---17/CH4/EX2<br />
選擇國旗的程式<br />
Public Class EX2<br />
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />
PictureBox1.Image = New Bitmap("..\..\fUSA2.gif")<br />
End Sub<br />
Page4
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />
PictureBox1.Image = New Bitmap("..\..\fCanada2.gif")<br />
End Sub<br />
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click<br />
PictureBox1.Image = New Bitmap("..\..\fFrance2.gif")<br />
End Sub<br />
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click<br />
PictureBox1.Image = New Bitmap("..\..\fJapan2.gif")<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Me.BackgroundImage = New Bitmap("..\..\fBg1.gif")<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Me.BackgroundImage = New Bitmap("..\..\fBg2.gif")<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
Me.BackgroundImage = New Bitmap("..\..\fBg3.gif")<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
PictureBox1.Size = New Size(PictureBox1.Size.Width - 10, PictureBox1.Size.Height - 10)<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
PictureBox1.Size = New Size(PictureBox1.Size.Width + 10, PictureBox1.Size.Height + 10)<br />
End Sub<br />
End Class<br />
程式碼---17/CH4/Form1<br />
攝氏溫度轉華氏溫度<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 & " 度。 ", 3 + 32, "溫度轉換")<br />
'MsgBox(r)<br />
If r = 2 Then<br />
MsgBox("程式完畢")<br />
Else<br />
MsgBox("程式完畢")<br />
End If<br />
End Sub<br />
End Class<br />
Page5
程式碼---17/CH4/Form2<br />
邊框變化<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 />
Label1.BorderStyle = BorderStyle.Fixed3D<br />
Label1.Text = "立體邊框"<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Label1.BorderStyle = BorderStyle.Fixed3D<br />
Label1.Text = "單線邊框"<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Label1.BorderStyle = BorderStyle.Fixed3D<br />
Label1.Text = "無邊框"<br />
End Sub<br />
End Class<br />
按鈕的移動與縮放<br />
程式碼---17/CH4/Form3<br />
Public Class Form3<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Label1.Location = New Point(Label1.Location.X - 20, 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 />
Label1.Location = New Point(Label1.Location.X + 20, Label1.Location.Y)<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Label1.Size = New Size(Label1.Size.Width + 10, Label1.Size.Height + 10)<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Label1.Size = New Size(Label1.Size.Width - 10, Label1.Size.Height - 10)<br />
End Sub<br />
Page6
Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
Label1.BackColor = Color.Purple<br />
End Sub<br />
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />
Label1.BackColor = Color.Blue<br />
End Sub<br />
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />
Label1.BackColor = Color.Brown<br />
End Sub<br />
End Class<br />
程式碼---17/CH4/Form4<br />
變換表單背景<br />
Public Class Form4<br />
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
PictureBox1.Click<br />
PictureBox1.Image = New Bitmap("..\..\house.gif")<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Me.BackgroundImage = New Bitmap("..\..\闔家平安.gif")<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Me.BackgroundImage = New Bitmap("..\..\考試順利.gif")<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Me.BackgroundImage = New Bitmap("..\..\工作順利.gif")<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Me.BackgroundImage = Nothing<br />
End Sub<br />
End Class<br />
計算機<br />
Page7
程式碼---17/CH5/EX1<br />
Public Class Ex1<br />
Dim a, b$<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim a = 1<br />
TextBox1.Text = TextBox1.Text & "1"<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Dim a = 2<br />
TextBox1.Text = TextBox1.Text & "2"<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Dim a = 3<br />
TextBox1.Text = TextBox1.Text & "3"<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Dim a = 4<br />
TextBox1.Text = TextBox1.Text & "4"<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
Dim a = 5<br />
TextBox1.Text = TextBox1.Text & "5"<br />
End Sub<br />
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />
Dim a = 6<br />
TextBox1.Text = TextBox1.Text & "6"<br />
End Sub<br />
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />
Dim a = 7<br />
TextBox1.Text = TextBox1.Text & "7"<br />
End Sub<br />
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click<br />
Dim a = 8<br />
TextBox1.Text = TextBox1.Text & "8"<br />
End Sub<br />
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click<br />
Dim a = 9<br />
TextBox1.Text = TextBox1.Text & "9"<br />
End Sub<br />
Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button10.Click<br />
Dim a = 0<br />
TextBox1.Text = TextBox1.Text & "0"<br />
End Sub<br />
Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button11.Click<br />
TextBox1.Text = TextBox1.Text & "."<br />
End Sub<br />
Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button12.Click<br />
Select Case b<br />
Case "+"<br />
TextBox1.Text = Val(a) + Val(TextBox1.Text)<br />
Case "-"<br />
TextBox1.Text = Val(a) - Val(TextBox1.Text)<br />
Case "*"<br />
TextBox1.Text = Val(a) * Val(TextBox1.Text)<br />
Case "/"<br />
Page8
TextBox1.Text = Val(a) / Val(TextBox1.Text)<br />
End Select<br />
End Sub<br />
Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button13.Click<br />
a = TextBox1.Text<br />
b = "+"<br />
TextBox1.Text = ""<br />
End Sub<br />
Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button14.Click<br />
a = TextBox1.Text<br />
b = "-"<br />
TextBox1.Text = ""<br />
End Sub<br />
Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button15.Click<br />
a = TextBox1.Text<br />
b = "*"<br />
TextBox1.Text = ""<br />
End Sub<br />
Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Button16.Click<br />
a = TextBox1.Text<br />
b = "/"<br />
TextBox1.Text = ""<br />
End Sub<br />
Private Sub Ex1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
End Sub<br />
End Class<br />
程式碼---17/CH5/Form1<br />
顯示按鈕時間<br />
Public Class Form1<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Label1.Text = "按鈕時間為" & vbCrLf & Now<br />
End Sub<br />
End Class<br />
顯示編號<br />
Page9
程式碼---17/CH5/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$<br />
a = AscW(TextBox1.Text & Chr(0))<br />
Label1.Text = "Unicode : " & a & " (十六進位 : " & Hex(a) & " ) "<br />
End Sub<br />
End Class<br />
程式碼---17/CH6/EX1<br />
Public Class EX1<br />
Dim a, b, c As Integer<br />
找出最大值<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 TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
TextBox2.TextChanged<br />
End Sub<br />
b = Val(TextBox2.Text)<br />
Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
TextBox3.TextChanged<br />
End Sub<br />
c = Val(TextBox3.Text)<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
If a > b Then<br />
Else<br />
End Sub<br />
End Class<br />
End If<br />
If a > c Then<br />
Else<br />
End If<br />
Label1.Text = "最大值" & a<br />
Label1.Text = "最大值" & c<br />
If b > c Then<br />
Else<br />
End If<br />
Label1.Text = "最大值" & b<br />
Label1.Text = "最大值" & c<br />
Page10
程式碼---17/CH6/EX2<br />
點餐計價<br />
Public Class EX2<br />
Dim a, b, c, d, t As Integer<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim f As String<br />
a = Val(TextBox1.Text)<br />
b = Val(TextBox2.Text)<br />
c = Val(TextBox3.Text)<br />
d = Val(TextBox4.Text)<br />
t = 30 * a + 70 * b + 65 * c + 99 * d<br />
f = "= 總價" & t & "元"<br />
If CheckBox1.Checked Then<br />
t *= 0.9<br />
f = f & "+折扣券8折"<br />
End If<br />
If CheckBox2.Checked Then<br />
t *= 0.8<br />
f = f & "+折扣券8折"<br />
End If<br />
If RadioButton2.Checked Then<br />
If t < 300 Then<br />
t += 30<br />
f = f & "+運費30元"<br />
End If<br />
End If<br />
TextBox5.Text = t<br />
Label6.Text = f<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
TextBox1.Text = ""<br />
TextBox2.Text = ""<br />
TextBox3.Text = ""<br />
TextBox4.Text = ""<br />
TextBox5.Text = ""<br />
Label6.Text = ""<br />
CheckBox1.Checked = False<br />
CheckBox2.Checked = False<br />
End Sub<br />
End Class<br />
Page11
程式碼---17/CH6/Form1<br />
Public Class Form1<br />
折扣計算<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim buy As Integer, pay As Integer<br />
Dim msg As String<br />
buy = Val(TextBox1.Text)<br />
If buy > 1000 Then<br />
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 />
Page12
程式碼---17/CH6/Form2<br />
Public Class Form2<br />
猜數字遊戲<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 System.Object, ByVal e As System.EventArgs) 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 />
Else<br />
End Sub<br />
End Class<br />
End If<br />
MsgBox("答對了, 你共猜了 " & vCnt.Text & "次。")<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 />
選擇字體與大小<br />
Page13
程式碼---17/CH6/Form3<br />
Public Class Form3<br />
Dim fN As String, fS As Integer, fSy As FontStyle<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click,<br />
fn_kai.Click, fn_new.Click, _<br />
fs_9.Click, fs_10.Click, fs_11.Click, fs_12.Click, _<br />
fst_b.Click, fst_i.Click, fst_del.Click, fst_und.Click<br />
fN = If(fn_new.Checked, "新細明體", "標楷體")<br />
If fs_9.Checked Then<br />
fS = 9<br />
ElseIf fs_10.Checked Then<br />
fS = 10<br />
ElseIf fs_11.Checked Then<br />
Else<br />
End If<br />
fS = 11<br />
fS = 12<br />
If sender.Equals(Button1) Then<br />
Else<br />
fst_b.Checked = False<br />
fst_i.Checked = False<br />
fst_del.Checked = False<br />
fst_und.Checked = False<br />
fSy = FontStyle.Regular<br />
fSy = 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 />
End If<br />
If sender.Equals(Button1) Then<br />
End If<br />
fS = 12<br />
fs_12.Checked = True<br />
If sender.Equals(Button1) Then<br />
End If<br />
fN = fn_new.Checked<br />
fn_new.Checked = True<br />
Label1.Font = New Font(fN, fS, fSy)<br />
Page14
程式碼---17/CH7/ EX1<br />
Public Class EX1<br />
Dim a, b, c, d As Integer<br />
分數統計<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
If Val(TextBox1.Text) > 100 Or Val(TextBox1.Text) < -2 Then<br />
Else<br />
MsgBox("請輸入0~100之間的分數,未輸入表示0分、輸入-1表示結束。")<br />
TextBox1.Text = ""<br />
分。", 0 + 64, "結果")<br />
End Sub<br />
End Class<br />
End If<br />
If Val(TextBox1.Text) = -1 Then<br />
Else<br />
MsgBox("共" & a & "人," & b & "人及格," & c & "人不及格,平均" & Format(d / a, "#.#") & "<br />
End<br />
End If<br />
If Val(TextBox1.Text) < 60 Then<br />
Else<br />
End If<br />
c += 1<br />
b += 1<br />
d = d + Val(TextBox1.Text)<br />
a = a + 1<br />
TextBox1.Text = ""<br />
Label3.Text = a + 1<br />
TextBox1.Focus()<br />
數字金字塔<br />
Page15
程式碼---17/CH7/ EX2<br />
Public Class EX2<br />
Private Sub EX2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
For a = 1 To 15<br />
For b = 1 To a<br />
If b >= 10 Then<br />
Label1.Text = Label1.Text & b - 10<br />
Else<br />
Label1.Text = Label1.Text & b<br />
End If<br />
Next<br />
For c = a - 1 To 1 Step -1<br />
If c >= 10 Then<br />
Label1.Text = Label1.Text & c - 10<br />
Else<br />
Label1.Text = Label1.Text & c<br />
End If<br />
Next<br />
Label1.Text = Label1.Text & vbCrLf<br />
Next<br />
End Sub<br />
End Class<br />
程式碼---17/CH7/ Form1<br />
Public Class Form1<br />
倒數字金字塔<br />
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Dim i As Integer<br />
For i = 25 To 1 Step -4<br />
Next<br />
Label1.Text = Label1.Text & vbCrLf & StrDup(i, CStr(i \ 4 + 1))<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 />
Page16
程式碼---17/CH7/ Form2<br />
蟑螂大逃竄<br />
Public Class Form2<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Button1.Visible = False<br />
PictureBox1.Left = 0 - PictureBox1.Size.Width<br />
PictureBox1.Visible = True<br />
Do<br />
PictureBox1.Left = PictureBox1.Left + 1<br />
If PictureBox1.Left Mod 10 = 0 Then '每隔10點上下晃動一次<br />
PictureBox1.Top = PictureBox1.Top + Int(7 * Rnd()) - 3 '上下移動3點<br />
End If<br />
System.Threading.Thread.Sleep(1) '暫停1/1000秒<br />
Application.DoEvents()<br />
Loop Until (PictureBox1.Left > Me.ClientSize.Width)<br />
Button1.Visible = True<br />
PictureBox1.Visible = False<br />
End Sub<br />
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Randomize()<br />
End Sub<br />
End Class<br />
程式碼---17/CH7/ Form3<br />
電子時鐘<br />
Public Class Form3<br />
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Label1.Text = Format(Now(), "HH:mm:ss")<br />
Label2.Text = Format(Now(), _<br />
If(CheckBox1.Checked, "yyyy/mm/dd", "yyyy/MM/dd"))<br />
End Sub<br />
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick<br />
Label1.Text = Format(Now(), _<br />
If(CheckBox1.Checked, "hh:mm:ss", "HH:mm:ss"))<br />
End Sub<br />
Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
CheckBox2.CheckedChanged<br />
Timer1.Enabled = Not CheckBox2.Checked<br />
End Sub<br />
End Class<br />
Page17
程式碼---17/CH8/ EX1<br />
Public Class EX1<br />
歌唱成績計分排名<br />
Private Sub EX1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Dim 姓名() = {"吳國民", "李得勝", "蔡可申", "陳夢嬌", "方十全"}<br />
Dim 評分(,) = {{77, 78, 78, 84, 84, 79, 77, 76, 76, 81}, _<br />
Dim sum(4) As Short<br />
Dim min, max As Short<br />
For i = 0 To 4<br />
Next<br />
min = 評分(i, 0)<br />
max = 評分(i, 0)<br />
sum(i) = 評分(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 評分(i, j) < min Then<br />
End If<br />
min = 評分(i, j)<br />
If 評分(i, j) > max Then<br />
End If<br />
max = 評分(i, j)<br />
sum(i) = sum(i) + 評分(i, j)<br />
sum(i) = sum(i) - min - max<br />
Array.Sort(sum, 姓名)<br />
For i = 4 To 0 Step -1<br />
Next<br />
End Sub<br />
End Class<br />
Label1.Text = Label1.Text & 姓名(i) & " " & sum(i) / 8 & vbCrLf<br />
Page18
程式碼---17/CH8/ EX2<br />
上下移動按鈕<br />
Public Class EX2<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim i%<br />
If ListBox1.SelectedIndex = 0 Then '已經移到最上面了(第0筆)<br />
ListBox1.Items.Insert(ListBox1.Items.Count, ListBox1.Items(0)) '新增在最後一筆<br />
ListBox1.Items.RemoveAt(0) '刪掉第一筆<br />
ListBox1.SelectedIndex = ListBox1.Items.Count - 1<br />
Else<br />
i = ListBox1.SelectedIndex<br />
If i = -1 Then<br />
MsgBox("尚未選取資料項目!", , "注意")<br />
Else<br />
ListBox1.Items.Insert(i - 1, ListBox1.SelectedItem)<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex())<br />
ListBox1.SelectedIndex = i - 1<br />
End If<br />
End If<br />
ListBox1.Text = ListBox1.SelectedIndex<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Dim i%<br />
If ListBox1.SelectedIndex = ListBox1.Items.Count - 1 Then '已經移到最下面了(第n-1筆)<br />
ListBox1.Items.Insert(0, ListBox1.Items(ListBox1.Items.Count - 1)) '新增在最前面<br />
ListBox1.Items.RemoveAt(ListBox1.Items.Count - 1) '刪掉最後一筆<br />
ListBox1.SelectedIndex = 0<br />
Else<br />
i = ListBox1.SelectedIndex<br />
If i = -1 Then<br />
MsgBox("尚未選取資料項目!", , "注意")<br />
Else<br />
ListBox1.Items.Insert(i + 2, ListBox1.SelectedItem)<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex())<br />
ListBox1.SelectedIndex = i + 1<br />
End If<br />
End If<br />
ListBox1.Text = ListBox1.SelectedIndex<br />
End Sub<br />
End Class<br />
Page19
程式碼---17/CH8/ EX3<br />
餐廳排隊給號系統<br />
Public Class EX3<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
If TextBox1.Text "" Then<br />
ListBox1.Items.Add(Format(ListBox1.Items.Count + 1, "00#-") & TextBox1.Text)<br />
Else<br />
MsgBox("請輸入資料")<br />
End If<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
'修改項目,亦即插入一筆在指定位置之前,再刪除該指定位置之資料<br />
If ListBox1.SelectedIndex = -1 Then<br />
MsgBox("尚未選取清單方塊任何一個項目", 0 + 16, "錯誤")<br />
Else<br />
ListBox1.Items.Insert(ListBox1.SelectedIndex(), Mid(ListBox1.SelectedItem, 1, 3) & "-" &<br />
TextBox1.Text)<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex())<br />
End If<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Dim i As Integer<br />
For i = 0 To ListBox1.SelectedItems.Count - 1<br />
ListBox2.Items.Add(ListBox1.SelectedItems(i))<br />
Next<br />
For i = ListBox1.SelectedIndices.Count - 1 To 0 Step -1<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndices(i))<br />
Next<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Dim i As Integer<br />
For i = 0 To ListBox2.SelectedIndices.Count - 1<br />
ListBox1.Items.Add(ListBox2.SelectedItems(i))<br />
Next<br />
For i = ListBox2.SelectedIndices.Count - 1 To 0 Step -1<br />
ListBox2.Items.RemoveAt(ListBox2.SelectedIndices(i))<br />
Next<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
If Button5.Text "" Then<br />
ListBox2.Items.Clear()<br />
End If<br />
End Sub<br />
End Class<br />
Page20
程式碼---17/CH8/ Form1<br />
成績資料<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 />
Dim 成績陣列() As String = Split(TextBox1.Text, ",")<br />
Dim 筆數 = UBound(成績陣列) + 1<br />
For Each s In 成績陣列<br />
總分 = 總分 + Val(s)<br />
Next<br />
MsgBox("成績筆數 :" & 筆數 & vbCrLf & "總成績為 :" & 總分 & vbCrLf & "平均成績 :" & Math.Round(總分 /<br />
筆數, 2))<br />
End Sub<br />
End Class<br />
程式碼---17/CH8/ Form2<br />
主控台輸入資料<br />
Module Form1<br />
Sub Main()<br />
Dim 資料, 陣列(0) As String<br />
Dim 筆數 As Integer = 0<br />
Do<br />
Console.Write("請輸入資料:")<br />
資料 = Console.ReadLine()<br />
If 資料 = "" Then Exit Do<br />
ReDim Preserve 陣列(筆數)<br />
陣列(筆數) = 資料<br />
筆數 = 筆數 + 1<br />
Loop<br />
Console.WriteLine("你一共輸入了" & 筆數 & "筆資料。")<br />
Array.Sort(陣列)<br />
For i = 1 To 筆數<br />
Console.WriteLine(陣列)<br />
Next<br />
Console.ReadLine()<br />
End Sub<br />
End Module<br />
Page21
程式碼---17/CH8/ Form3<br />
主控台輸入數值資料<br />
Module Form2<br />
Sub main()<br />
Dim X(4), i As Integer<br />
For i = 0 To 4<br />
console.write("請輸入數值資料:")<br />
x(i) = val(console.readline)<br />
Next<br />
array.sort(x)<br />
For i = 0 To 4<br />
Console.WriteLine("x(" & i & ") = " & X(i))<br />
Next<br />
Console.ReadLine()<br />
End Sub<br />
End Module<br />
程式碼---17/CH8/ Form4<br />
成績查詢程式<br />
Public Class Form3<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim 姓名() = {"陳桶一", "黃光耀", "胡生妙", "王為全", "李日正", "劉德菖", "方正一", "劉康寶", "謝掬<br />
花", "王美蘭", "徐小噹", "葉小毛"}<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 />
Dim 索引值 = Array.IndexOf(姓名, TextBox1.Text)<br />
If 索引值 < 0 Then<br />
Label3.Text = "查無此人!"<br />
Page22
Label5.Text = ""<br />
Label7.Text = ""<br />
Else<br />
Label3.Text = 數學(索引值)<br />
Label5.Text = 國文(索引值)<br />
Label7.Text = 英文(索引值)<br />
End If<br />
TextBox1.Focus()<br />
Dim 索引 As Integer = Array.IndexOf(數學, 100)<br />
Dim math100$, name$<br />
While 索引 >= 0<br />
name = 姓名(索引)<br />
math100 = math100 + " " + name<br />
索引 = Array.IndexOf(數學, 100, 索引 + 1)<br />
End While<br />
MsgBox(math100, , "數學100分者")<br />
'Dim i As Integer = Array.IndexOf(數學, 100)<br />
'i = Array.IndexOf(數學, 100)<br />
'While i >= 0<br />
'姓名 = 姓名(i)<br />
'i = Array.IndexOf(數學, 100, i + 1)<br />
'End While<br />
'MsgBox(姓名(i) & ": 100")<br />
End Sub<br />
End Class<br />
程式碼---17/CH8/ Form5<br />
綜合所得淨額<br />
Public Class Form4<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim 稅率(,) As Integer = {{410000, 6, 0}, {1090000, 13, 28700}, {2180000, 21, 115900}, _<br />
{4090000, 30, 312100}, {4090001, 40, 721100}}<br />
Dim 所得淨額 As Integer = Val(TextBox1.Text)<br />
Dim i As Integer<br />
For i = 0 To UBound(稅率, 1) - 1<br />
If 所得淨額
程式碼---17/CH8/ Form6<br />
Imports System.Drawing<br />
Public Class Form5<br />
字型設定程式<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 />
If ListBox1.SelectedIndex = -1 Then ListBox1.SelectedItem = Label1.Font.Name<br />
If ListBox2.SelectedIndex = -1 Then ListBox2.SelectedIndex = 0<br />
If ListBox3.SelectedIndex = -1 Then ListBox3.SelectedItem = "12"<br />
Dim 字型名稱 As String = ListBox1.SelectedItem<br />
Dim 字型樣式 As FontStyle<br />
Dim 字型大小 As Integer = Val(ListBox3.SelectedItem)<br />
Select Case 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 />
調換程式<br />
Page24
程式碼---17/CH8/ Form7<br />
Public Class Form6<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim i As Integer<br />
For i = 0 To ListBox1.SelectedItems.Count - 1<br />
ListBox2.Items.Add(ListBox1.SelectedItems(i))<br />
Next<br />
For i = ListBox1.SelectedIndices.Count - 1 To 0 Step -1<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndices(i))<br />
Next<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Dim i As Integer<br />
For i = 0 To ListBox2.SelectedItems.Count - 1<br />
ListBox1.Items.Add(ListBox2.SelectedItems(i))<br />
Next<br />
For i = ListBox2.SelectedIndices.Count - 1 To 0 Step -1<br />
ListBox2.Items.RemoveAt(ListBox2.SelectedIndices(i))<br />
Next<br />
End Sub<br />
End Class<br />
程式碼---17/CH8/ Form8<br />
字型設計<br />
Imports System.Drawing<br />
Public Class Form7<br />
Private Sub Form7_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
ComboBox2.Text = "標準"<br />
End Sub<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 ComboBox2.Text = " " Then ComboBox2.SelectedIndex = 0<br />
If ComboBox3.Text = " " Then ComboBox3.Text = "12"<br />
Dim 字型名稱 As String = ComboBox1.Text<br />
Dim 字型樣式 As FontStyle<br />
Dim 字型大小 As Integer = Val(ComboBox3.Text)<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 />
End Select<br />
Label1.Font = New Font(字型名稱, 字型大小, 字型樣式)<br />
End Sub<br />
End Class<br />
Page25
程式碼---17/CH9/ EX1<br />
Imports System.Drawing<br />
Public Class EX1<br />
比大小<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 />
Randomize()<br />
Label1.Text = Int(Rnd() * 6) + 1<br />
Label2.Text = Int(Rnd() * 6) + 1<br />
Select Case Val(Label1.Text)<br />
Case 1<br />
Case 2<br />
Case 3<br />
Case 4<br />
Case 5<br />
Case 6<br />
End Select<br />
PictureBox1.Image = New Bitmap("..\..\1.jpg")<br />
PictureBox1.Image = New Bitmap("..\..\2.jpg")<br />
PictureBox1.Image = New Bitmap("..\..\3.jpg")<br />
PictureBox1.Image = New Bitmap("..\..\4.jpg")<br />
PictureBox1.Image = New Bitmap("..\..\5.jpg")<br />
PictureBox1.Image = New Bitmap("..\..\6.jpg")<br />
Select Case Val(Label2.Text)<br />
Case 1<br />
Case 2<br />
Case 3<br />
Case 4<br />
Case 5<br />
Case 6<br />
End Select<br />
PictureBox2.Image = New Bitmap("..\..\1.jpg")<br />
PictureBox2.Image = New Bitmap("..\..\2.jpg")<br />
PictureBox2.Image = New Bitmap("..\..\3.jpg")<br />
PictureBox2.Image = New Bitmap("..\..\4.jpg")<br />
PictureBox2.Image = New Bitmap("..\..\5.jpg")<br />
PictureBox2.Image = New Bitmap("..\..\6.jpg")<br />
Page26
程式碼---17/CH9/ EX2<br />
重力加速度<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 />
Label4.Text = freefall((Val(MaskedTextBox1.Text)))<br />
End Sub<br />
End Class<br />
程式碼---17/CH9/ Module1<br />
Module Module1<br />
Sub main()<br />
fact(5)<br />
End Sub<br />
Sub fact(ByVal n As Integer)<br />
Dim total As Double = 1<br />
For i = 2 To n<br />
total *= i<br />
Next<br />
Console.WriteLine(n & "! 的值為 " & total)<br />
End Sub<br />
End Module<br />
計算階乘<br />
計算速度<br />
Page27
程式碼---17/CH9/ Module2<br />
Module Module2<br />
Sub finalv(ByVal seconds As Single, Optional ByVal v0 As Single = 0, _<br />
Optional ByVal accelaration As Single = 9.8)<br />
Console.WriteLine("初速" & v0 & ", 加速度" & accelaration & ", 經" & seconds & "秒後,")<br />
Dim velocity = v0 + accelaration * seconds<br />
Console.WriteLine("速度為" & velocity)<br />
End Sub<br />
Sub main()<br />
finalv(10, 15, 3)<br />
Console.WriteLine("_ _ _ _ _ _ ")<br />
finalv(10, 20)<br />
Console.WriteLine("_ _ _ _ _ _")<br />
finalv(10)<br />
End Sub<br />
End Module<br />
程式碼---17/CH9/ Module3<br />
Module Module3<br />
Sub doublearrayvalue(ByVal b() As Integer)<br />
For i = 0 To b.Length - 1<br />
b(i) *= 2<br />
Next<br />
End Sub<br />
Sub main()<br />
Dim a() As Integer = {1, 2, 3, 4}<br />
doublearrayvalue(a)<br />
For i = 0 To a.Length - 1<br />
Console.WriteLine(a(i))<br />
Next<br />
End Sub<br />
End Module<br />
整數陣列<br />
開獎號碼<br />
Page28
程式碼---17/CH9/ Form4<br />
Public Class Form4<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim draw(4) As Integer<br />
Dim lucky As Integer<br />
Randomize()<br />
For i = 0 To 4<br />
Next<br />
End Sub<br />
End Class<br />
While draw(i) = 0<br />
lucky = CInt(Int(Rnd() * 39) + 1)<br />
If Array.IndexOf(draw, lucky) = -1 Then<br />
End If<br />
End While<br />
draw(i) = lucky<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 />
程式碼---17/CH9/ Form5<br />
Public Class Form5<br />
遞回<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
End Sub<br />
Dim a%<br />
a = Val(TextBox1.Text)<br />
Label1.Text = fac(a)<br />
Function fac(ByVal i As Integer) As Long<br />
If i
程式碼---17/CH9/ Module6<br />
圓盤張數<br />
Module Module6<br />
Dim number As Integer<br />
Sub main()<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 />
End Sub<br />
Sub aa(ByVal n, ByVal a, ByVal b, ByVal c)<br />
If n > 0 Then<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 />
End If<br />
End Sub<br />
End Module<br />
英文字母大寫、千分位符號、滑鼠移入變白色<br />
程式碼---17/CH10/ 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 />
Select Case e.KeyChar<br />
Case "a" To "z"<br />
TextBox1.AppendText(Chr(Asc(e.KeyChar) - 32))<br />
Page30
e.Handled = True<br />
End Select<br />
End Sub<br />
Private Sub Form1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseEnter<br />
Me.BackColor = Color.White<br />
End Sub<br />
Private Sub Form1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.MouseLeave<br />
Me.BackColor = SystemColors.Control<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim a, c As String<br />
Dim m As Integer<br />
a = TextBox2.Text<br />
If Len(a) > 3 Then<br />
If Len(a) Mod 3 0 Then<br />
c = Mid(a, 1, Len(a) Mod 3)<br />
For m = Len(a) Mod 3 + 1 To Len(a) Step 3<br />
c = c + "," + Mid(a, m, 3)<br />
Next<br />
Else<br />
For m = 1 To Len(a) Step 3<br />
Next<br />
End If<br />
End If<br />
TextBox2.Text = c<br />
End Sub<br />
End Class<br />
程式碼---17/CH11/ EX1<br />
畫圖<br />
Public Class EX1<br />
Private Sub EX1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />
Me.Paint<br />
Dim g = e.Graphics<br />
g.DrawRectangle(Pens.Black, 10, 10, 126, 126)<br />
g.FillRectangle(Brushes.White, 11, 11, 124, 124)<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim g = Me.CreateGraphics<br />
Dim a%<br />
Refresh()<br />
a = Val(TextBox1.Text) * 2<br />
g.FillEllipse(Brushes.Black, 200, 10, a, a)<br />
If RadioButton1.Checked = True Then<br />
g.FillEllipse(Brushes.Purple, 200, 10, a, a)<br />
Page31
ElseIf RadioButton2.Checked = True Then<br />
g.FillEllipse(Brushes.SkyBlue, 200, 10, a, a)<br />
ElseIf RadioButton3.Checked = True Then<br />
g.FillEllipse(Brushes.LightGreen, 200, 10, a, a)<br />
ElseIf RadioButton4.Checked = True Then<br />
g.FillEllipse(Brushes.Pink, 200, 10, a, a)<br />
End If<br />
g.Dispose()<br />
End Sub<br />
Private Sub Button1_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles<br />
Button1.SizeChanged<br />
Dim a As Integer<br />
a = Val(TextBox1.Text)<br />
End Sub<br />
End Class<br />
程式碼---17/CH11/ EX2<br />
播放音樂<br />
Public Class EX2<br />
Private Sub EX2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
'AxWindowsMediaPlayer1.settings.autoStart = False<br />
'AxWindowsMediaPlayer1.URL = "\CH11\music.wma"<br />
HScrollBar1.Value = Me.AxWindowsMediaPlayer1.settings.volume<br />
Me.Timer1.Enabled = True<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
AxWindowsMediaPlayer1.Ctlcontrols.play()<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
AxWindowsMediaPlayer1.Ctlcontrols.pause()<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
AxWindowsMediaPlayer1.Ctlcontrols.stop()<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
AxWindowsMediaPlayer1.Ctlcontrols.fastReverse()<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
AxWindowsMediaPlayer1.Ctlcontrols.fastForward()<br />
End Sub<br />
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then<br />
AxWindowsMediaPlayer1.URL = OpenFileDialog1.FileName<br />
End If<br />
End Sub<br />
Page32
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />
AxWindowsMediaPlayer1.fullScreen = True<br />
End Sub<br />
Private Sub AxWindowsMediaPlayer1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
AxWindowsMediaPlayer1.Enter<br />
Select Case AxWindowsMediaPlayer1.playState<br />
Case WMPLib.WMPPlayState.wmppsPlaying<br />
Button1.Enabled = False<br />
Button2.Enabled = True<br />
Button3.Enabled = True<br />
Button4.Enabled = True<br />
Button5.Enabled = True<br />
Case WMPLib.WMPPlayState.wmppsPaused<br />
Button1.Enabled = True<br />
Button2.Enabled = False<br />
Button3.Enabled = True<br />
Button4.Enabled = True<br />
Button5.Enabled = True<br />
Case WMPLib.WMPPlayState.wmppsStopped<br />
Button1.Enabled = True<br />
Button2.Enabled = True<br />
Button3.Enabled = False<br />
Button4.Enabled = True<br />
Button5.Enabled = True<br />
'Case WMPLib.WMPPlayState.wmppsReady<br />
' Button2.Enabled = False<br />
' Button3.Enabled = False<br />
' Button4.Enabled = False<br />
'Button5.Enabled = False<br />
End Select<br />
End Sub<br />
Private Sub HScrollBar1_Scroll(ByVal sender As System.Object, ByVal e As<br />
System.Windows.Forms.ScrollEventArgs) Handles HScrollBar1.Scroll<br />
Me.AxWindowsMediaPlayer1.settings.volume = HScrollBar1.Value<br />
End Sub<br />
End Class<br />
程式碼---17/CH11/ Form1<br />
繪圖<br />
Public Class Form1<br />
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />
Me.Paint<br />
Dim g = e.Graphics<br />
g.DrawRectangle(Pens.DarkBlue, 10, 10, 20, 50)<br />
Dim bigpen = New Pen(Color.Pink, 3)<br />
Page33
g.DrawRectangle(bigpen, 50, 10, 40, 50)<br />
Dim biggerpen = New Pen(Color.Purple, 9)<br />
g.DrawRectangle(biggerpen, 100, 10, 30, 50)<br />
g.DrawLine(bigpen, 30, 90, 90, 160)<br />
g.DrawLine(biggerpen, 100, 80, 40, 150)<br />
Dim p1 = New Point(250, 250)<br />
Dim p2 = New Point(150, 150)<br />
Dim p3 = New Point(150, 15)<br />
Dim p4 = New Point(350, 15)<br />
Dim p5 = New Point(350, 150)<br />
g.DrawLine(Pens.LightSkyBlue, p1, p2)<br />
g.DrawLine(Pens.LightSkyBlue, p2, p3)<br />
g.DrawLine(Pens.LightSkyBlue, p3, p4)<br />
g.DrawLine(Pens.LightSkyBlue, p4, p5)<br />
g.DrawLine(Pens.LightSkyBlue, p5, p1)<br />
g.DrawRectangle(Pens.Green, 25, 250, 200, 100)<br />
g.DrawRectangle(Pens.Green, 25, 250, 200, 100)<br />
g.FillEllipse(Brushes.Orange, 25, 250, 200, 100)<br />
Dim p6 = New Point(200, 50)<br />
Dim p7 = New Point(100, 100)<br />
Dim p8 = New Point(300, 100)<br />
g.DrawLine(Pens.MediumBlue, p6, p7)<br />
g.DrawLine(Pens.MediumBlue, p7, p8)<br />
g.DrawLine(Pens.MediumBlue, p8, p6)<br />
End Sub<br />
End Class<br />
程式碼---17/CH11/ Form2<br />
預設筆刷<br />
Public Class Form2<br />
Private Sub Form2_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />
Me.Paint<br />
Dim width = Me.ClientSize.Width / 10<br />
Dim height = Me.ClientSize.Height / 10<br />
Dim mybrushes() = {Brushes.Red, Brushes.Orange, Brushes.Yellow, Brushes.Green, _<br />
Brushes.Blue, Brushes.Indigo, Brushes.Purple, Brushes.White}<br />
Randomize()<br />
For i = 0 To 9<br />
For j = 0 To 9<br />
Dim index = Fix(Rnd() * 8)<br />
Dim size = Fix(Rnd() * width)<br />
Dim rect = New Rectangle(i * width + index, j * height + index, size, size)<br />
e.Graphics.FillEllipse(mybrushes(index), rect)<br />
Next<br />
Next<br />
End Sub<br />
Private Sub Form2_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged<br />
Me.Invalidate()<br />
End Sub<br />
End Class<br />
Page34
程式碼---17/CH11/ Form3<br />
圖片旋轉<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 />
img = Image.FromFile("..\..\sample.png")<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End Sub<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 />
img.RotateFlip(RotateFlipType.Rotate270FlipNone)<br />
ElseIf e.Button = Windows.Forms.MouseButtons.Right Then<br />
img.RotateFlip(RotateFlipType.Rotate90FlipNone)<br />
End If<br />
Me.Invalidate()<br />
End Sub<br />
Private Sub Form3_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />
Me.Paint<br />
e.Graphics.DrawImage(img, 0, 0, Me.ClientSize.Width, Me.ClientSize.Height)<br />
End Sub<br />
End Class<br />
長度、重量轉換<br />
Page35
程式碼---17/CH12/ EX1<br />
Public Class EX1<br />
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton1.Click<br />
Label1.ForeColor = Color.Navy<br />
Label2.ForeColor = Color.Navy<br />
Label3.ForeColor = Color.Navy<br />
Label7.ForeColor = Color.Navy<br />
Label8.ForeColor = Color.Navy<br />
End Sub<br />
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton2.Click<br />
Label1.ForeColor = Color.Green<br />
Label2.ForeColor = Color.Green<br />
Label3.ForeColor = Color.Green<br />
Label7.ForeColor = Color.Green<br />
Label8.ForeColor = Color.Green<br />
End Sub<br />
Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton3.Click<br />
Label1.ForeColor = Color.CornflowerBlue<br />
Label2.ForeColor = Color.CornflowerBlue<br />
Label3.ForeColor = Color.CornflowerBlue<br />
Label7.ForeColor = Color.CornflowerBlue<br />
Label8.ForeColor = Color.CornflowerBlue<br />
End Sub<br />
Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem2.Click<br />
Label1.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />
Label2.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />
Label3.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />
Label7.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />
Label8.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />
ToolStripStatusLabel1.Text = "字型大小=14"<br />
End Sub<br />
Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem3.Click<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 />
Label7.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />
Label8.Font = New Font(Label1.Font.Name, 16, Label1.Font.Style)<br />
ToolStripStatusLabel1.Text = "字型大小=16"<br />
End Sub<br />
Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem4.Click<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 />
Label7.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />
Label8.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />
ToolStripStatusLabel1.Text = "字型大小=18"<br />
End Sub<br />
Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem5.Click<br />
Label1.Font = New Font(Label1.Font.Name, 20, Label1.Font.Style)<br />
Label2.Font = New Font(Label1.Font.Name, 20, Label1.Font.Style)<br />
Label3.Font = New Font(Label1.Font.Name, 20, Label1.Font.Style)<br />
Page36
Label7.Font = New Font(Label1.Font.Name, 20, Label1.Font.Style)<br />
Label8.Font = New Font(Label1.Font.Name, 20, Label1.Font.Style)<br />
ToolStripStatusLabel1.Text = "字型大小=20"<br />
End Sub<br />
Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem6.Click<br />
Label1.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />
Label2.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />
Label3.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />
Label7.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />
Label8.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />
ToolStripStatusLabel1.Text = "字型大小=22"<br />
End Sub<br />
Private Sub 公尺轉英尺ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 公尺轉英呎ToolStripMenuItem.Click<br />
Label4.Text = Val(TextBox1.Text)<br />
Label6.Text = Val(TextBox1.Text) * 3.28084<br />
End Sub<br />
Private Sub 英呎轉公尺ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 英呎轉公尺ToolStripMenuItem.Click<br />
Label6.Text = Val(TextBox1.Text)<br />
Label4.Text = Val(TextBox1.Text) / 3.28084<br />
End Sub<br />
Private Sub 公斤轉英磅ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 公斤轉英磅ToolStripMenuItem.Click<br />
Label9.Text = Val(TextBox1.Text)<br />
Label11.Text = Val(TextBox1.Text) * 2.20462<br />
End Sub<br />
Private Sub 英磅轉公斤ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 英磅轉公斤ToolStripMenuItem.Click<br />
Label11.Text = Val(TextBox1.Text)<br />
Label9.Text = Val(TextBox1.Text) / 2.20462<br />
End Sub<br />
End Class<br />
程式碼---17/CH12/ Form1<br />
控制字型樣式、大小<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 />
Me.Width *= 1.2<br />
Me.Height *= 1.2<br />
End Sub<br />
Private Sub 縮小ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Page37
縮小ToolStripMenuItem.Click<br />
Me.Width *= 0.8<br />
Me.Height *= 0.8<br />
End Sub<br />
Private Sub 還原ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
還原ToolStripMenuItem.Click<br />
Me.Width = 300<br />
Me.Height = 300<br />
End Sub<br />
Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem2.Click<br />
x = 200<br />
Me.Invalidate()<br />
ToolStripMenuItem3.Checked = False<br />
ToolStripMenuItem4.Checked = False<br />
End Sub<br />
Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem3.Click<br />
x = 300<br />
Me.Invalidate()<br />
ToolStripMenuItem2.Checked = False<br />
ToolStripMenuItem4.Checked = False<br />
End Sub<br />
Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem4.Click<br />
x = 400<br />
Me.Invalidate()<br />
ToolStripMenuItem2.Checked = False<br />
ToolStripMenuItem3.Checked = False<br />
End Sub<br />
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />
Me.Paint<br />
Dim g = e.Graphics<br />
g.Clear(Me.BackColor)<br />
g.FillEllipse(Brushes.Black, 10, 60, x, x)<br />
End Sub<br />
Private Sub PurpleToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles PurpleToolStripMenuItem.Click<br />
Me.BackColor = Color.Purple<br />
End Sub<br />
Private Sub BlueToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
BlueToolStripMenuItem.Click<br />
Me.BackColor = Color.SkyBlue<br />
End Sub<br />
Private Sub GreenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
GreenToolStripMenuItem.Click<br />
Me.BackColor = Color.Green<br />
End Sub<br />
Private Sub PinkToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
PinkToolStripMenuItem.Click<br />
Me.BackColor = Color.Pink<br />
End Sub<br />
Private Sub 一般ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
一般ToolStripMenuItem.Click<br />
Label1.Font = New Font(Label1.Font, FontStyle.Regular)<br />
End Sub<br />
Private Sub 粗體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
粗體ToolStripMenuItem.Click<br />
Label1.Font = New Font(Label1.Font, FontStyle.Bold)<br />
End Sub<br />
Page38
Private Sub 斜體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
斜體ToolStripMenuItem.Click<br />
Label1.Font = New Font(Label1.Font, FontStyle.Italic)<br />
End Sub<br />
Private Sub 粗斜體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 粗斜體ToolStripMenuItem.Click<br />
Label1.Font = New Font(Label1.Font, FontStyle.Bold Or FontStyle.Italic)<br />
End Sub<br />
Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem6.Click<br />
Label1.Font = New Font(Label1.Font.Name, 14, Label1.Font.Style)<br />
End Sub<br />
Private Sub ToolStripMenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem7.Click<br />
Label1.Font = New Font(Label1.Font.Name, 18, Label1.Font.Style)<br />
End Sub<br />
Private Sub ToolStripMenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripMenuItem8.Click<br />
Label1.Font = New Font(Label1.Font.Name, 22, Label1.Font.Style)<br />
End Sub<br />
Private Sub 標楷體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 標楷體ToolStripMenuItem.Click<br />
Label1.Font = New Font("標楷體", Label1.Font.Size, Label1.Font.Style)<br />
End Sub<br />
Private Sub 新細明體ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 新細明體ToolStripMenuItem.Click<br />
Label1.Font = New Font("新細明體", Label1.Font.Size, Label1.Font.Style)<br />
End Sub<br />
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton1.Click<br />
Label1.ForeColor = Color.PaleGreen<br />
End Sub<br />
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton2.Click<br />
Label1.ForeColor = Color.LightSalmon<br />
End Sub<br />
Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton3.Click<br />
Label1.ForeColor = Color.LightCyan<br />
End Sub<br />
Private Sub ToolStripLabel1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripLabel1.Click<br />
Shell("c:\windows\notepad.exe", AppWinStyle.NormalFocus)<br />
End Sub<br />
Private Sub ToolStripLabel2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripLabel2.Click<br />
Shell("c:\windows\system32\calc.exe", AppWinStyle.NormalFocus)<br />
End Sub<br />
End Class<br />
平均分數程式<br />
Page39
程式碼---17/CH13/ EX1<br />
Public Class EX1<br />
Dim MenuFilepath = "D:\CH13\Score.csv"<br />
Dim MenuItems As New ArrayList<br />
Private Sub EX1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Try<br />
Dim MenuReader = My.Computer.FileSystem.OpenTextFieldParser(MenuFilepath, ",")<br />
While Not MenuReader.EndOfData<br />
Dim onerow() = MenuReader.ReadFields()<br />
MenuItems.Add(onerow)<br />
ListBox1.Items.Add(onerow(0) & "- " & onerow(1) & "分" & ", " & onerow(2) & "分")<br />
End While<br />
MenuReader.Close()<br />
Calc()<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End Sub<br />
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles ListBox1.SelectedIndexChanged<br />
MsgBox(ListBox1.SelectedIndex)<br />
If ListBox1.SelectedIndex > -1 Then<br />
TextBox1.Text = MenuItems(ListBox1.SelectedIndex)(0)<br />
TextBox2.Text = MenuItems(ListBox1.SelectedIndex)(1)<br />
TextBox3.Text = MenuItems(ListBox1.SelectedIndex)(2)<br />
End If<br />
End Sub<br />
Sub Calc()<br />
Dim i, eng_sum, math_sum As Integer<br />
For Each item In MenuItems 'ArrayList一次就是讀一列<br />
eng_sum += item(1)<br />
math_sum += item(2)<br />
i += 1<br />
Next<br />
Label6.Text = Format(eng_sum / i, "#.##")<br />
Label7.Text = Format(math_sum / i, "#.##")<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
MenuItems.RemoveAt(ListBox1.SelectedIndex)<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)<br />
TextBox1.Text = ""<br />
TextBox2.Text = ""<br />
TextBox3.Text = ""<br />
Calc()<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
If TextBox2.Text "" And Val(TextBox2.Text) >= 0 And Val(TextBox3.Text) >= 0 Then<br />
Dim newitem() = {TextBox1.Text, TextBox2.Text, TextBox3.Text}<br />
MenuItems.Add(newitem)<br />
ListBox1.Items.Add(TextBox1.Text & " : 英文 " & TextBox2.Text & "分,數學 " & TextBox3.Text & "<br />
分")<br />
Calc()<br />
Else<br />
MsgBox("輸入錯誤!")<br />
End If<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
MenuItems(ListBox1.SelectedIndex)(0) = TextBox1.Text<br />
Page40
MenuItems(ListBox1.SelectedIndex)(1) = TextBox2.Text<br />
MenuItems(ListBox1.SelectedIndex)(2) = TextBox3.Text<br />
ListBox1.Items(ListBox1.SelectedIndex) = MenuItems(ListBox1.SelectedIndex)(0) & " : 英文 " &<br />
MenuItems(ListBox1.SelectedIndex)(1) & "分,數學 " & MenuItems(ListBox1.SelectedIndex)(2) & "分"<br />
Calc()<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Try<br />
Dim menuwriter = My.Computer.FileSystem.OpenTextFileWriter(MenuFilepath, False)<br />
For Each item In MenuItems<br />
menuwriter.WriteLine(item(0) & "," & item(1) & "," & item(2))<br />
Next<br />
menuwriter.Flush()<br />
menuwriter.Close()<br />
MsgBox("儲存成功")<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End Sub<br />
End Class<br />
程式碼---17/CH13/ Form1<br />
開檔、存檔功能<br />
Public Class Form1<br />
Dim filechanged As Boolean = False<br />
Private Sub textbox1_textchanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles<br />
TextBox1.TextChanged<br />
If (filechanged = False) Then<br />
filechanged = True<br />
Me.Text &= "*"<br />
End If<br />
End Sub<br />
Private Sub asksave()<br />
If filechanged = True Then<br />
If MsgBox("是否要儲存檔案?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then<br />
SaveFile()<br />
End If<br />
End If<br />
End Sub<br />
Private Sub 開啟檔案ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 開啟檔案ToolStripMenuItem.Click<br />
asksave()<br />
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then<br />
Page41
Try<br />
TextBox1.Text = My.Computer.FileSystem.ReadAllText(OpenFileDialog1.FileName)<br />
Me.Text = OpenFileDialog1.SafeFileName<br />
filechanged = False<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End If<br />
End Sub<br />
Sub SaveFile()<br />
If Big5ToolStripMenuItem.Checked Then<br />
My.Computer.FileSystem.WriteAllText(OpenFileDialog1.FileName, TextBox1.Text, False,<br />
System.Text.Encoding.GetEncoding(950))<br />
Else<br />
My.Computer.FileSystem.WriteAllText(OpenFileDialog1.FileName, TextBox1.Text, False)<br />
End If<br />
End Sub<br />
Private Sub 儲存檔案ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 儲存檔案ToolStripMenuItem.Click<br />
SaveFile()<br />
filechanged = False<br />
Me.Text = SaveFileDialog1.FileName<br />
End Sub<br />
Private Sub 另存新檔ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 另存新檔ToolStripMenuItem.Click<br />
If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then<br />
SaveFile()<br />
End If<br />
End Sub<br />
Private Sub 關閉檔案ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 關閉檔案ToolStripMenuItem.Click<br />
asksave()<br />
Me.Text = "未命名"<br />
TextBox1.Text = ""<br />
filechanged = False<br />
End Sub<br />
Private Sub 離開ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
離開ToolStripMenuItem.Click<br />
End<br />
End Sub<br />
Private Sub Big5ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
Big5ToolStripMenuItem.Click<br />
UTF8ToolStripMenuItem.Checked = False<br />
UTF16ToolStripMenuItem.Checked = False<br />
End Sub<br />
Private Sub UTF8ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
UTF8ToolStripMenuItem.Click<br />
Big5ToolStripMenuItem.Checked = False<br />
UTF16ToolStripMenuItem.Checked = False<br />
End Sub<br />
Private Sub UTF16ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
UTF16ToolStripMenuItem.Click<br />
Big5ToolStripMenuItem.Checked = False<br />
UTF8ToolStripMenuItem.Checked = False<br />
End Sub<br />
End Class<br />
Page42
程式碼---17/CH13/ Form2<br />
文字編輯程式<br />
Public Class Form2<br />
Dim writer As System.IO.StreamWriter<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then<br />
Dim linenum As Integer = 1<br />
Try<br />
Dim reader = My.Computer.FileSystem.OpenTextFileReader(OpenFileDialog1.FileName)<br />
While reader.EndOfStream = False<br />
Dim singleline = reader.ReadLine()<br />
TextBox1.Text &= linenum.ToString("D3") & "" & singleline & vbAbort<br />
linenum += 1<br />
End While<br />
reader.Close()<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End If<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then<br />
Try<br />
'儲存檔案<br />
My.Computer.FileSystem.WriteAllText(SaveFileDialog1.FileName, TextBox1.Text, False)<br />
logging("儲存檔案:" & SaveFileDialog1.FileName)<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End If<br />
End Sub<br />
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Try<br />
'以附加方式開啟紀錄檔<br />
writer = My.Computer.FileSystem.OpenTextFileWriter("..\..\Logfile.log", True)<br />
logging("程式啟動")<br />
Catch ex As Exception<br />
MsgBox("無法開啟紀錄檔," & ex.Message)<br />
Me.Close()<br />
End Try<br />
End Sub<br />
Private Sub Form2_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs)<br />
Handles Me.FormClosing<br />
If Not (writer Is Nothing) Then<br />
logging("程式結束")<br />
writer.Close()<br />
End If<br />
End Sub<br />
Sub logging(ByVal message As String)<br />
'在訊息前加上目前時間並寫入紀錄檔<br />
writer.WriteLine(Now & "," & message)<br />
End Sub<br />
End Class<br />
Page43
程式碼---17/CH13/ Form3<br />
點菜程式<br />
Public Class Form3<br />
Dim menufilepath = "D:\CH13\Menu.csv"<br />
Dim menuitems As New ArrayList() '儲存菜單的陣列<br />
Dim orderdetail As New ArrayList()<br />
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Try<br />
Dim menureader = My.Computer.FileSystem.OpenTextFieldParser(menufilepath, ",")<br />
While Not menureader.EndOfData<br />
Dim onerow() = menureader.ReadFields()<br />
menuitems.Add(onerow)<br />
ListBox1.Items.Add(onerow(0) & "-" & onerow(1) & "元")<br />
End While<br />
menureader.Close()<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End Sub<br />
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles ListBox1.SelectedIndexChanged<br />
Dim index = ListBox1.SelectedIndex<br />
If index >= 0 Then<br />
TextBox1.Text = menuitems(index)(0)<br />
TextBox2.Text = menuitems(index)(1)<br />
End If<br />
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
'刪除所選項目<br />
menuitems.RemoveAt(ListBox1.SelectedIndex)<br />
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
If TextBox2.Text "" And Val(TextBox2.Text) Then<br />
Dim newitem() = {TextBox1.Text, TextBox2.Text}<br />
menuitems.Add(newitem)<br />
ListBox1.Items.Add(TextBox1.Text & "-" & TextBox2.Text & "元")<br />
Else<br />
Page44
MsgBox("輸入錯誤!")<br />
End If<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Dim index = ListBox1.SelectedIndex<br />
If index >= 0 Then<br />
menuitems(index)(0) = TextBox1.Text<br />
menuitems(index)(1) = TextBox2.Text<br />
ListBox1.Items(index) = menuitems(index)(0) & "-" & menuitems(index)(1) & "元"<br />
End If<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Try<br />
Dim menuwriter = My.Computer.FileSystem.OpenTextFileWriter(menufilepath, False)<br />
For Each item In menuitems '寫入格式為「菜色名稱,價格」<br />
menuwriter.WriteLine(item(0) & "," & item(1))<br />
Next<br />
menuwriter.Close()<br />
MsgBox("儲存成功")<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
Dim index = ListBox1.SelectedIndex<br />
If index >= 0 And Val(TextBox3.Text) > 0 Then<br />
Dim entry() = {menuitems(index)(0), TextBox3.Text, TextBox3.Text * menuitems(index)(1)}<br />
orderdetail.Add(entry)<br />
ListBox2.Items.Add(menuitems(index)(0) & "," & TextBox3.Text & "份, " & Val(TextBox3.Text) *<br />
menuitems(index)(1) & "元")<br />
Else<br />
MsgBox("需選取菜色且數量大於0")<br />
End If<br />
End Sub<br />
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click<br />
Dim index = ListBox2.SelectedIndex<br />
If index >= 0 Then<br />
ListBox2.Items.RemoveAt(index)<br />
orderdetail.RemoveAt(index)<br />
End If<br />
End Sub<br />
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />
If ListBox2.Items.Count > 0 Then<br />
Dim orderwriter = My.Computer.FileSystem.OpenTextFileWriter("D:\CH13\Orders.csv", True)<br />
Dim msg As String = "你點了:" & vbCrLf<br />
Dim subtotal As Integer = 0<br />
For i = 0 To orderdetail.Count - 1<br />
orderwriter.WriteLine(Now & orderdetail(i)(0) & "," & orderdetail(i)(1) & "," &<br />
orderdetail(i)(2))<br />
msg &= ListBox2.Items(i) & vbCrLf<br />
subtotal += orderdetail(i)(2)<br />
Next<br />
orderwriter.Close()<br />
ListBox2.Items.Clear()<br />
orderdetail.Clear()<br />
MsgBox(msg & vbCrLf & "共" & subtotal & "元")<br />
Else<br />
MsgBox("你還沒點菜")<br />
End If<br />
End Sub<br />
End Class<br />
Page45
程式碼---17/CH13-1/ Form1<br />
Public Class Form1<br />
顯示資料夾與檔案清單<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 />
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)<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 />
Page46
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 />
End Sub<br />
'TextBox1.Text = formatdir(TextBox1.Text)<br />
Try '錯誤處理<br />
MkDir(TextBox1.Text) '建立資料夾<br />
Catch ex As Exception<br />
End Try<br />
MsgBox("你已建立過了喔!", 0 + 64, "")<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 />
'刪除資料夾<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 curdir$<br />
curdir = TextBox1.Text & ListBox2.SelectedItem<br />
Try<br />
End Sub<br />
My.Computer.FileSystem.DeleteFile(curdir)<br />
Catch ex As Exception<br />
End Try<br />
MsgBox("該目錄以不存在喔!", 0 + 48, "")<br />
display()<br />
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Page47
Handles ListBox1.SelectedIndexChanged<br />
End Sub<br />
TextBox1.Text = formatdir(TextBox1.Text)<br />
TextBox1.Text = TextBox1.Text & ListBox1.SelectedItem<br />
display()<br />
Private Sub ListBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles ListBox2.SelectedIndexChanged<br />
"<br />
End Sub<br />
End Class<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 />
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 />
Page48
程式碼---17/CH14-1/ Form1<br />
書籍資料庫-1<br />
Public Class Form1<br />
Private Sub 書籍BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 書籍BindingNavigatorSaveItem.Click<br />
Me.Validate()<br />
Me.書籍BindingSource.EndEdit()<br />
Me.TableAdapterManager.UpdateAll(Me.產品DataSet)<br />
End Sub<br />
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
'TODO: 這行程式碼會將資料載入 '產品DataSet.書籍' 資料表。您可以視需要進行移動或移除。<br />
Me.書籍TableAdapter.Fill(Me.產品DataSet.書籍)<br />
End Sub<br />
End Class<br />
程式碼---17/CH14-1/ Form2<br />
成衣資料庫<br />
Public Class Form2<br />
Private Sub TshirtBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles TshirtBindingNavigatorSaveItem.Click<br />
Me.Validate()<br />
Me.TshirtBindingSource.EndEdit()<br />
Me.TableAdapterManager.UpdateAll(Me.成衣DataSet)<br />
End Sub<br />
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
'TODO: 這行程式碼會將資料載入 '成衣DataSet.Tshirt' 資料表。您可以視需要進行移動或移除。<br />
Me.TshirtTableAdapter.Fill(Me.成衣DataSet.Tshirt)<br />
End Sub<br />
End Class<br />
Page49
程式碼---17/CH14-1/ Form3<br />
Public Class Form3<br />
書籍資料庫-2<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 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 />
書籍資料庫-3<br />
Page50
程式碼---17/CH14-1/ 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 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 />
程式碼---17/CH14-1/ Form5<br />
Public Class Form5<br />
書籍資料庫-4<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 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 />
Page51
程式碼---17/CH14-1/ Form6<br />
Public Class Form6<br />
成衣資料庫<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.成衣DataSet1)<br />
Private Sub Form6_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
End Sub<br />
End Class<br />
'TODO: 這行程式碼會將資料載入 '成衣DataSet1.Tshirt' 資料表。您可以視需要進行移動或移除。<br />
Me.TshirtTableAdapter.Fill(Me.成衣DataSet1.Tshirt)<br />
程式碼---17/CH14-1/ Form7<br />
查閱欄位<br />
Public Class Form7<br />
Private Sub 書籍BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles 書籍BindingNavigatorSaveItem.Click<br />
Me.Validate()<br />
Me.書籍BindingSource.EndEdit()<br />
Page52
Me.TableAdapterManager.UpdateAll(Me.產品DataSet1)<br />
End Sub<br />
Private Sub Form7_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Me.類別TableAdapter.Fill(Me.產品DataSet1.類別)<br />
Me.書籍TableAdapter.Fill(Me.產品DataSet1.書籍)<br />
End Sub<br />
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton1.Click<br />
OpenFileDialog1.Filter = "圖檔|*.jpg;*.gif;*.jpeg;*.png;*.tif|所有檔案|*.*"<br />
If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then<br />
圖片PictureBox.Image = New Bitmap(OpenFileDialog1.FileName)<br />
End If<br />
End Sub<br />
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
ToolStripButton2.Click<br />
圖片PictureBox.Image = Nothing<br />
End Sub<br />
End Class<br />
程式碼---17/Exam1 / Form1<br />
Public Class Form1<br />
加減乘除<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
End Sub<br />
TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text)<br />
Label5.Text = "+"<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
End Sub<br />
TextBox3.Text = Val(TextBox1.Text) - Val(TextBox2.Text)<br />
Label5.Text = "-"<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
End Sub<br />
TextBox3.Text = Val(TextBox1.Text) * Val(TextBox2.Text)<br />
Label5.Text = "╳"<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 />
TextBox3.Text = Val(TextBox1.Text) / Val(TextBox2.Text)<br />
Label5.Text = "÷"<br />
Page53
程式碼---17/Exam1 / Form2<br />
Public Class Form2<br />
'清除鍵<br />
購買清單<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
TextBox4.Text<br />
'輸入鍵<br />
End Sub<br />
& "金額"<br />
TextBox5.Text += vbCrLf & TextBox1.Text & vbTab & TextBox2.Text & vbTab & TextBox3.Text & vbTab &<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
End Sub<br />
& "金額"<br />
TextBox5.Text = ""<br />
TextBox5.Text = " 購買清單 " & Now() & vbCrLf & "品名" & vbTab & "單價" & vbTab & "數量" & vbTab<br />
Private Sub Form1_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated<br />
End Sub<br />
TextBox5.Text = " 購買清單 " & Now() & vbCrLf & "品名" & vbTab & "單價" & vbTab & "數量" & vbTab<br />
Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
TextBox4.TextChanged<br />
End Sub<br />
Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
TextBox3.TextChanged<br />
End Sub<br />
TextBox4.Text = Val(TextBox2.Text) * Val(TextBox3.Text)<br />
Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles<br />
TextBox2.TextChanged<br />
End Sub<br />
End Class<br />
TextBox4.Text = Val(TextBox2.Text) * Val(TextBox3.Text)<br />
Page54
程式碼---17/Exam1 / Form3<br />
Public Class Form3<br />
Dim ans<br />
計算 BMI 值、三角形面積<br />
Private Sub Form3_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load<br />
ans = MsgBox("您快樂嗎?", 4 + 32, "問答題")<br />
If ans = 6 Then<br />
Else<br />
End Sub<br />
End If<br />
Label1.Text = "請輸入體重(公斤)="<br />
Label2.Text = "請輸入身高(公分)="<br />
Me.Text = "計算BMI值"<br />
Label1.Text = "請輸入底 ="<br />
Label2.Text = "請輸入高 ="<br />
Me.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 />
Page55
程式碼---17/Exam2 / Form1<br />
單數值之和<br />
Public Class Form1<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Dim a, t As Integer<br />
If Val(TextBox1.Text) Mod 7 = 0 Then<br />
a = Val(TextBox1.Text) / 7<br />
Else<br />
a = Val(TextBox1.Text) \ 7<br />
End If<br />
For i = 7 To a * 7 Step 7<br />
t = t + i<br />
Next i<br />
Label2.Text = "計算結果:" & t<br />
TextBox1.Focus()<br />
End Sub<br />
End Class<br />
程式碼---17/Exam2 / Form2<br />
電費計算<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 />
fee = 2.1 * 110 + 2.7 * 220 + 3.6 * (a - 330)<br />
Else<br />
If a > 110 Then<br />
fee = 2.1 * 110 + 2.7 * (a - 110)<br />
Else<br />
If a > 40 Then<br />
fee = 2.1 * a<br />
Else<br />
fee = 2.1 * 40<br />
End If<br />
End If<br />
End If<br />
Label1.Text = "電費共 " & CInt(fee) & " 元"<br />
End Sub<br />
End Class<br />
Page56
程式碼---17/Exam3 / Form1<br />
費氏數列<br />
Public Class Form1<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
If Val(TextBox1.Text) < 1 Then<br />
MsgBox("請輸入大於0的數", 0 + 16, "錯誤")<br />
TextBox1.Text = ""<br />
Else<br />
TextBox2.Text = Fib(Val(TextBox1.Text))<br />
End If<br />
End Sub<br />
Function Fib(ByVal K As Integer) As Decimal<br />
If K
Dim a, b As Integer<br />
a = Int(Rnd() * 6 + 1)<br />
b = Int(Rnd() * 6 + 1)<br />
PictureBox1.Image = New Bitmap("..\..\" & a & ".gif")<br />
PictureBox2.Image = New Bitmap("..\..\" & b & ".gif")<br />
If (a + b < 7 And RadioButton1.Checked = True) Or (a + b > 6 And RadioButton2.Checked = True) Then<br />
win += 1<br />
MsgBox("你贏了,共贏了" & win & "次,輸了" & lost & "次", 48 + 0, "^_^")<br />
Else<br />
lost += 1<br />
MsgBox("你輸了,共贏了" & win & "次,輸了" & lost & "次", 16 + 0, ">_
程式碼---17/Exam4 / Form2<br />
Imports System.Drawing.Drawing2D<br />
Public Class Form2<br />
Private Sub Form2_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles<br />
Me.Paint<br />
Dim g = e.Graphics<br />
g.FillEllipse(Brushes.Black, 0, 0, Me.ClientSize.Width, Me.ClientSize.Height)<br />
g.FillEllipse(Brushes.White, 2, 2, Me.ClientSize.Width - 4, Me.ClientSize.Height - 4)<br />
Dim a = New Point(ClientSize.Width / 2, 0)<br />
Dim b = New Point(ClientSize.Width / 2, ClientSize.Height)<br />
Dim c = New Point(0, ClientSize.Height / 2)<br />
Dim d = New Point(ClientSize.Width, ClientSize.Height / 2)<br />
g.DrawLine(Pens.Black, a, b)<br />
g.DrawLine(Pens.Black, c, d)<br />
End Sub<br />
Private Sub Form2_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged<br />
Me.Invalidate()<br />
End Sub<br />
End Class<br />
程式碼---17/Exam4 / Form3<br />
MP3 播放器<br />
Public Class Form3<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Select Case ListBox1.SelectedIndex<br />
Case 0<br />
AxWindowsMediaPlayer1.URL = "c:\Exam4\1.mp3"<br />
AxWindowsMediaPlayer1.Ctlcontrols.play()<br />
Case 1<br />
AxWindowsMediaPlayer1.URL = "c:\Exam4\2.mp3"<br />
AxWindowsMediaPlayer1.Ctlcontrols.play()<br />
Case 2<br />
AxWindowsMediaPlayer1.URL = "c:\Exam4\3.mp3"<br />
AxWindowsMediaPlayer1.Ctlcontrols.play()<br />
Case Else<br />
MsgBox("未選取檔案!", 0 + 64, "注意")<br />
End Select<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
AxWindowsMediaPlayer1.Ctlcontrols.stop()<br />
End Sub<br />
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick<br />
Label1.Text = AxWindowsMediaPlayer1.Ctlcontrols.currentPositionString<br />
End Sub<br />
End Class<br />
Page59
程式碼---17/Exam5 / Form1<br />
Public Class Form1<br />
Dim x%, y%, xd%, yd%<br />
Dim g As Graphics<br />
Dim brush As SolidBrush<br />
螢幕保護程式<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 />
brush = New SolidBrush(Color.LightSalmon)<br />
Page60
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 />
brush = New SolidBrush(Color.Purple)<br />
brush = New SolidBrush(Color.Red)<br />
brush = New SolidBrush(Color.PeachPuff)<br />
brush = New SolidBrush(Color.DarkGreen)<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 />
Page61
程式碼---17/Exam5 / Form2<br />
顯示資料夾內的子資料夾<br />
Public Class Form2<br />
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load<br />
TextBox1.Text = CurDir()<br />
TextBox1.SelectionStart = Len(TextBox1.Text)<br />
TextBox1.Focus()<br />
End Sub<br />
Function formatDir(ByVal strDir As String)<br />
If Microsoft.VisualBasic.Right(strDir, 1) "\" Then<br />
strDir &= "\"<br />
End If<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)<br />
Do Until strItem = ""<br />
If (GetAttr(strItem) And vbDirectory) = 16 Then<br />
ListBox1.Items.Add(strItem)<br />
Else<br />
ListBox2.Items.Add(strItem)<br />
End If<br />
strItem = Dir()<br />
Loop<br />
End Sub<br />
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />
Try<br />
MkDir(TextBox1.Text)<br />
Catch ex As Exception<br />
MsgBox("該目錄已存在!", 0 + 48, "")<br />
End Try<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<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 />
Page62
End Sub<br />
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />
Display()<br />
End Sub<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 CurFile$<br />
CurFile = TextBox1.Text & ListBox2.SelectedItem<br />
Try<br />
My.Computer.FileSystem.DeleteFile(CurFile)<br />
Catch ex As Exception<br />
MsgBox("錯誤: 檔案已不存在或無法刪除!", 0 + 48, "")<br />
End Try<br />
Display()<br />
End Sub<br />
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click<br />
ChDir("..")<br />
TextBox1.Text = CurDir()<br />
Display()<br />
End Sub<br />
Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles<br />
ListBox1.DoubleClick<br />
TextBox1.Text = formatDir(TextBox1.Text)<br />
TextBox1.Text = TextBox1.Text & ListBox1.SelectedItem<br />
Display()<br />
End Sub<br />
Private Sub ListBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)<br />
Handles ListBox2.SelectedIndexChanged<br />
TextBox1.Text = formatDir(TextBox1.Text)<br />
ToolStripStatusLabel1.Text = "檔案大小:" & FileLen(TextBox1.Text & ListBox2.SelectedItem) & " Bytes<br />
"<br />
ToolStripStatusLabel2.Text = "修改日期:" & FileDateTime(TextBox1.Text & ListBox2.SelectedItem)<br />
Select Case GetAttr(TextBox1.Text & ListBox2.SelectedItem)<br />
Case 39<br />
Label2.Text = "檔案屬性:一般、系統、隱藏、唯讀"<br />
Case 36<br />
Label2.Text = "檔案屬性:一般、系統"<br />
Case 35<br />
Label2.Text = "檔案屬性:一般、 隱藏、唯讀"<br />
Case 34<br />
Label2.Text = "檔案屬性:一般、 隱藏"<br />
Case 32<br />
Label2.Text = "檔案屬性:一般"<br />
Case 7<br />
Label2.Text = "檔案屬性: 系統、隱藏、唯讀"<br />
Case 6<br />
Label2.Text = "檔案屬性: 系統、隱藏"<br />
Case 5<br />
Label2.Text = "檔案屬性: 系統、 唯讀"<br />
Case 4<br />
Label2.Text = "檔案屬性: 系統"<br />
Case 3<br />
Label2.Text = "檔案屬性: 隱藏、唯讀"<br />
Case 2<br />
Label2.Text = "檔案屬性: 隱藏"<br />
Case 1<br />
Label2.Text = "檔案屬性: 唯讀"<br />
End Select<br />
End Sub<br />
End Class<br />
Page63
程式碼---17/Exam5 / Form3<br />
Public Class Form3<br />
Dim filename As String = "note.txt"<br />
便利貼<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 />
End Sub<br />
Dim len%<br />
FileOpen(1, filename, OpenMode.Binary)<br />
len = LOF(1)<br />
Dim content As New String("", len)<br />
FileGet(1, 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 />
Page64
互質的數、直角三角形、數字相加、身分證號碼<br />
程式碼---17/Exam6 / 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 i%, n%<br />
Label5.Text = ""<br />
n = Val(TextBox1.Text)<br />
For i = 2 To n - 1<br />
If (gcd(i, n) = 1) Then<br />
Label5.Text &= i & " "<br />
End If<br />
Next<br />
End Sub<br />
Function gcd(ByVal a, ByVal b) As ULong '遞迴解法<br />
If b = 0 Then<br />
Return a<br />
Else<br />
Return gcd(b, a Mod b)<br />
End If<br />
End Function<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 />
For j = 1 To i<br />
Label6.Text &= j<br />
Next<br />
Label6.Text &= vbCrLf<br />
Next<br />
End Sub<br />
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />
Dim n As String<br />
Dim total As Integer<br />
For i = 1 To Len(TextBox3.Text)<br />
If Asc(Mid(TextBox3.Text, i, 1)) >= 48 And Asc(Mid(TextBox3.Text, i, 1))
Else<br />
total = total + Val(n)<br />
n = ""<br />
End If<br />
Next i<br />
total = total + Val(n)<br />
Label7.Text = total<br />
End Sub<br />
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Dim n, m As Integer<br />
Dim s As String<br />
Select Case Asc(Mid(TextBox4.Text, 1, 1))<br />
Case 65 To 72<br />
n = Asc(Mid(TextBox4.Text, 1, 1)) - 55<br />
Case 73<br />
n = 34<br />
Case 74 To 78<br />
n = Asc(Mid(TextBox4.Text, 1, 1)) - 56<br />
Case 79<br />
n = 35<br />
Case 80 To 86<br />
n = Asc(Mid(TextBox4.Text, 1, 1)) - 57<br />
Case 87<br />
n = 32<br />
Case 88 To 89<br />
n = Asc(Mid(TextBox4.Text, 1, 1)) - 58<br />
Case 90<br />
n = 33<br />
End Select<br />
s = Microsoft.VisualBasic.Trim(Str(n))<br />
For i = 2 To 9<br />
s = s & Mid(TextBox4.Text, i, 1)<br />
Next i<br />
m = Val(Mid(s, 1, 1)) + Val(Mid(s, 2, 1)) * 9<br />
For i = 8 To 1 Step -1<br />
m = m + Val(Mid(s, 11 - i, 1)) * i<br />
Next i<br />
If 10 - (m Mod 10) = Val(Mid(TextBox4.Text, 10, 1)) Then<br />
Label8.Text = "正確"<br />
Else<br />
Label8.Text = "錯誤"<br />
End If<br />
End Sub<br />
End Class<br />
Page66