ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
Visual Basic 6.0
2
ความเป็นมาของ Visual Basic
พัฒนามาจากภาษา QBASIC เป็นภาษาที่เหมาะกับการเริ่มต้น Visual Basic V. 1.0 เมื่อปี 1991 Visual Basic V. 6.0 เมื่อปี 1998 Visual Studio .NET เมื่อปี 2002
3
ทำไมต้องเริ่มที่ Visual Basic
1. ง่ายต่อการเรียนรู้ 2. ความนิยมของตัวภาษา 3. เป็นซอฟต์แวร์ของ Microsoft 4. การพัฒนาอย่างต่อเนื่อง
4
ทำไมต้องเริ่มที่ Visual Basic
5. Visual Basic for Application (VBA) ในชุด Microsoft Office 6. VB Script Edition ใช้ในการเขียน สร้าง Home Page 7. ASP (Active Server Page)
5
การเขียนโปรแกรมแบบ Event-driven
การทำงานของโปรแกรมจะขึ้นอยู่กับ การกระทำกับส่วนประกอบต่างๆ ของ หน้าต่าง (Window) ของโปรแกรม เช่น ปุ่มต่างๆ, เลื่อนเมาส์ การทำงานจะเป็นไปตามเหตุการณ์ (Event) ที่เกิดขึ้น
6
การเขียนโปรแกรมแบบ Procedural
โปรแกรมเมอร์ต้องเขียน Code ควบคุมการทำงานของโปรแกรมเอง ทั้งหมด โดยต้องตรวจสอบเหตุการณ์ ต่างๆ ที่เกิดขึ้นด้วยตนเอง
7
ขั้นตอนการออกแบบโปรแกรม
1. ศึกษาความต้องการของผู้ใช้ 2. ออกแบบหน้าจอของโปรแกรม และขั้นตอนการทำงานของ โปรแกรม 3. เริ่มเขียนและพัฒนาโปรแกรม 4. รวบรวมและทดสอบโปรแกรม 5. ส่งมอบโปรแกรมสู่ผู้ใช้
8
รุ่นต่างๆ ของ Visual Basic
Learning Edition Professional Edition Enterprise Edition
9
การติดตั้งโปรแกรม ระบบปฏิบัติการ Windows 98-XP CPU Pentium ขึ้นไป
หน่วยความจำ (RAM) 32 MB ขึ้นไป CD-ROM, Mouse, Keyboard แผ่นโปรแกรม Microsoft Visual Studio 6.0 แผ่นโปรแกรม MSDN เป็นส่วนของ Help
10
คุณสมบัติของ Visual Basic
คอมไพเลอร์และการเขียนโปรแกรม บน Microsoft Windows หลักการของ OOP (Object Oriented Programming)
11
ส่วนประกอบของ Visual Basic
Object Properties Method Event
12
Textbox Form Checkbox Option Button
13
การเรียกใช้งาน ปุ่ม Start >> Programs >> Microsoft Visual Studio 6.0 >> Microsoft Visual Basic 6.0
14
ส่วนประกอบของ Visual Basic
แถบ Title Bar แถบ Menu Bar แถบ Tool Bar หน้าต่าง Form Windows View Object
15
ส่วนประกอบของ Visual Basic
หน้าต่าง Project Explorer View Project Explorer <Ctrl+R> หน้าต่าง Properties View Properties Window <F4>
16
ส่วนประกอบของ Visual Basic
หน้าต่าง Form Layout View Form Layout Window แถบเครื่องมือ Toolbox View Toolbox
17
เริ่มต้นการสร้าง Application
18
การสร้าง Application ใหม่
File New Project เลือก Standard EXE คลิกปุ่ม OK
19
การบันทึก Application
การบันทึกจะบันทึกแยก ระหว่าง Form กับ Project File Save Form หรือ Project ตั้งชื่อฟอร์ม หรือ ชื่อ project คลิกปุ่ม Save
20
การเพิ่ม Form ใหม่ Project Add Form หรือ
คลิก Toolbar ในการเพิ่ม Form
21
การเพิ่ม Form ที่มีอยู่แล้ว
Project Add File เลือกฟอร์มที่ต้องการ คลิกปุ่ม Open
22
ยกเลิก Form ออก เลือกฟอร์ม Project Remove ชื่อForm
23
การ Run Application Run Start หรือ กดคีย์ F5 หรือใช้ Toolbar
24
การ Stop Application Run End หรือ ใช้ Toolbar
25
การกำหนดฟอร์มที่รัน เมนู Project Project Properties… แท็บ General
กำหนดที่ Startup Object
26
พื้นฐานที่ในการสร้างโปรแกรมใน VB6
การสร้างคอนโทรลบนฟอร์ม การย้ายคอนโทรล การเปลี่ยนขนาดคอนโทรล การลบคอนโทรลออกจากฟอร์ม
27
พื้นฐานที่ในการสร้างโปรแกรมใน VB6
การกำหนดคุณสมบัติของคอนโทรล กำหนดที่หน้าต่าง Properties Windows Object List Box: แสดงรายชื่อของคอนโทรลทั้งหมดในฟอร์ม Properties List: แสดงชื่อคุณสมบัติและค่าที่กำหนดสำหรับคอนโทรลที่เราเลือก Description Pane: แสดงคำอธิบายสั้นๆเกี่ยวกับคุณสมบัติที่เราเลือก กำหนดโดยการเขียน Code คำสั่ง
28
พื้นฐานที่ในการสร้างโปรแกรมใน VB6
การเขียน Code คำสั่งเพื่อตอบสนองต่อ Event เปิดหน้าต่าง Code Editor ด้านซ้ายสำหรับเลือกชื่อ Object ด่านขวาสำหรับกำหนด Event ใส่คำสั่งลงไประหว่างข้อความ Private Sub<ชื่อคอนโทรล>_<ชื่ออีเว็นต์> กับ End Sub เป็นตัวบอกว่าคำสั่งที่ตอบสนองนั้นเริ่มต้นและจบลงที่ใด
29
การกำหนด Properties โดยการเขียนโค้ด
Object_Name.Properties_Name = ค่าของproperties เช่น Form1.Caption = “โปรแกรมการคำนวณภาษี" Form1.FontSize = 20
30
Properties พื้นฐานของ Control
Name Caption ForeColor BackColor Height, Width Left ,Top TabIndex Enabled Visible FontBold,FontIt alic FontName,Font Size FontUnderline MousePointer 30
31
การทำงานกับ Form
32
Properties ของ Form Name Icon BackColor MinButton ForeColor MaxButton
Caption Enabled Font Icon MinButton MaxButton Height Width AutoRedraw 32
33
Properties ของ Form MousePointer MouseIcon ( MousePointer=Custom )
Picture Visible CurrentX CurrentY 33
34
Method ของ Form Print "ข้อความ" & ตัวแปร Form_Name.Hide Form_Name.Show
Form_Name.Cls
35
การใช้ Method โดยการเขียนโค้ด
Object_Name.Method_Name [พารามิเตอร์ของ Method] เช่น Form1.Print "Siam Computer" Me.Show
36
Event ของ Form Activate เมื่อฟอร์ม Activate Click เมื่อคลิกที่ฟอร์ม
DblClick เมื่อดับเบิ้ลคลิกที่ฟอร์ม Load เมื่อเปิดฟอร์มขึ้นมาทำงาน UnLoad เมื่อปิดฟอร์ม
37
ตัวอย่างงาน Sub Form_Activate( ) Form1.FontSize=20 Print “Test Visual Basic” Print “Siam Computer” End Sub
38
Print “Test Visual Basic” ; Print “Siam Computer” CurrentX = 1500
ตัวอย่างงาน เพิ่ม เซมิโคลอน ( ; ) Sub Form_Activate( ) Form1.Font.Size=20 Print “Test Visual Basic” ; Print “Siam Computer” CurrentX = 1500 CurrentY = 1000 Print “New Position” End Sub ( )
39
ตัวอย่างที่ 2 คอนโทรล คุณสมบัติ ค่าที่กำหนด Form Name Form1
คอนโทรล คุณสมบัติ ค่าที่กำหนด Form Name Form1 AutoRedraw True CommandButton Name Command1 Caption Clear
40
ตัวอย่างที่ 2 Sub Form_Activate() Form1.Print “ Form_Activate ” End Sub Sub Form_Click() Form1.Print “ Form_Click ” End Sub Sub Command1_Click() Form1.Cls End Sub Sub Form_DblClick() Form1.Print “Double_Click ” End Sub Sub Form_Resize() Form1.Print “ Form_Resize” End Sub
41
Object พื้นฐาน ตัวแปรและ Operator
42
Label (properties) Name Alignment AutoSize BorderStyle BackStyle
Caption Left Top 42
43
Text Box (properties) Name ScrollBars Text TabIndex เริ่มที่ 0
MaxLenght PasswordChar Multiline ScrollBars TabIndex เริ่มที่ 0 TabStop ToolTipText
44
Object_Name.SetFocus กำหนดให้ cursor ไป focus ที่ Object
Method Object_Name.SetFocus กำหนดให้ cursor ไป focus ที่ Object เช่น Text1.Setfocus Command1. Setfocus
45
Properties.. SelStart กำหนดตำแหน่งเริ่มเลือก
SelLength กำหนดความยาวที่ต้องการ เลือกข้อความ
46
Event Change เมื่อมีการเปลี่ยนแปลงที่ Text
GotFocus เมื่อ Text ได้รับ Focus LostFocus เมื่อ Text สูญเสีย Focus
47
Command Button (properties)
Name Caption Default Picture Style
48
ตัวอย่างงาน หาผลคูณระหว่าง 2 Text Box
49
Source Code Sub cmdMultiply_Click() a = txtnum1.Text b = txtnum2.Text
lblResult.Caption = a & " * " & b & " = " & a * b End Sub
50
Operator ในการเชื่อมต่อข้อมูล
& และ + ใช้ในการเชื่อมข้อมูล ' ใช้ในการเปลี่ยนประโยคคำสั่งเป็นComment
51
การเปลี่ยน Font ใน View Code
เมนู Tools Option… Editor Format ในช่อง Font ต้องเลือก Font ที่ลง ท้ายด้วย UPC หรือ DSE เช่น BrowalliaUPC
52
ทำไมต้องประกาศตัวแปร
เพื่อการทำงานที่ถูกต้องขอโปรแกรม เมนู Tools Option… Editor Require Variable Declaration จะได้ Option Explicit ใน View Code
53
การประกาศตัวแปรและค่าคงที่
Dim variable_name As Data_Type Const const_name = Value เช่น Dim data1 As Integer Const name = “Somjate”
54
กฎการตั้งชื่อตัวแปร ชื่อตัวแปรต้องขึ้นด้วยตัวอักษร
ชื่อตัวแปรห้ามยาวเกิน 255 ตัวอักษร ใช้ตัวอักษร,ตัวเลขและ _ ผสมกัน เป็นชื่อได้ ห้ามซ้ำกับคำสงวน เช่น Dim ชื่อตัวแปรห้ามซ้ำกันถ้าอยู่ในขอบเขต เดียวกัน
55
ชนิดของข้อมูล Byte 0 ถึง 255 (1 Byte)
Integer -32,768 ถึง 32,767 (2 Byte) Long -2,147,483,648 ถึง 2,147,483,647 (4 Byte) Currency -922,337,203,685, ถึง 922,337,203,685, (8 Byte)
56
ชนิดของข้อมูล (ต่อ) Single จำนวนจริงมีทศนิยม (4 Byte)
ค่าลบ x1038 ถึง x และ ค่าบวก x10-45 ถึง x1038 Double จำนวนจริงมีทศนิยม (8 Byte) ค่าลบ – x10308 ถึง – x และ ค่าบวก x ถึง x10308
57
ชนิดของข้อมูล (ต่อ) Date ข้อมูลวันที่และเวลา (8 Byte)
String ตัวอักษรหรือข้อความ Boolean ค่าทางตรรกะ (2 Byte) Variant ตัวแปรพิเศษ (22 Byte)
58
Operator ทางคณิตศาสตร์
นิพจน์ ความหมาย + บวก - ลบ * คูณ / หาร \ หารจำนวนเต็ม Mod หารเอาแต่เศษ ^ ยกกำลัง
59
ตัวอย่างงาน การทำงานกับ Operator ทางคณิตศาสตร์
60
Private Sub Command1_Click()
Dim a As Integer Dim b As Integer a = Text1.Text b = Text2.Text Label3.Caption = a & " / " & b & " = " & a / b Label4.Caption = a & " \ " & b & " = " & a \ b Label5.Caption = a & " mod " & b & " = " & a Mod b Label6.Caption = a & " ^ " & b & " = " & a ^ b End Sub
61
ขอบเขตของตัวแปร (Scope of variable)
ตัวแปรแบบโลคอล (Local) ตัวแปรแบบโกลบอล (Global) Private ใช้ได้ทุกโปรแกรมย่อยใน Form ที่ประกาศ Public ใช้ได้ทุกโปรแกรมย่อยในโปรแกรม
62
Operator ทางการเปรียบเทียบ
นิพจน์ ความหมาย = เท่ากับ > มากกว่า > = มากกว่าหรือเท่ากับ < น้อยกว่า < = น้อยกว่าหรือเท่ากับ < > ไม่เท่ากับ
63
ตัวอย่างงาน การทำงานกับ Operator ทางการเปรียบเทียบ
64
Private Sub cmdCompare_Click()
Dim a As String Dim b As String a = txtNumber1.Text b = txtNumber2.Text lblNum1.Caption = a & " > " & b & " = " & (a > b) lblNum2.Caption = a & " < " & b & " = " & (a < b) lblNum3.Caption = a & " = " & b & " = " & (a = b) lblNum4.Caption = a & " <> " & b & " = " & (a <> b) End Sub
65
Operator ทางตรรกะ
66
ลำดับการคำนวณ Arithmetic Comparison Logical Exponentiation (^)
Equality (=) Not Negation (-) Inequality (<>) And Multiplication and division (*, /) Less than (<) Or Integer division (\) Greater than (>) Xor Modulus arithmetic (Mod) Less than or equal to (<=) Eqv Addition and subtraction (+, -) Greater than or equal to (>=) Imp String concatenation (&) Is & 66
67
ฟังก์ชันทางคณิตศาสตร์
Round(number) ใช้ในการปัดจุดทศนิยมให้เป็นเลขจำนวนเต็ม Int(number) ใช้ในการปัดจุดทศนิยมลงให้เป็นเลขจำนวนเต็ม
68
ฟังก์ชันทางคณิตศาสตร์
Rnd[(Number)] Rnd ใช้ในการสุ่มค่าของข้อมูล เช่น สุ่มค่าจำนวนเต็ม 0-9 Label1.Caption = Int(Rnd * 9) (Randomize ทำให้การสุ่มเลขได้ไม่ซ้ำ)
69
ฟังก์ชันทางคณิตศาสตร์
Sqr(number) ใช้หาค่ารากที่สองของข้อมูล Abs(number) ใช้กำหนดให้ค่าของข้อมูลเป็นค่าบวก
70
การทำงานกับฟังก์ชันข้อความ
InStr([Start],String1,String2,[Compare]) ใช้ค้นหาตัวอักษรใน String Replace(String1,Find, Replace) ใช้ค้นหาตัวอักษรใน String แล้วแทนที่ด้วย
71
การทำงานกับฟังก์ชันข้อความ
UCase(String) ใช้เปลี่ยน String เป็นพิมพ์ใหญ่ทั้งหมด LCase(String) ใช้เปลี่ยน String เป็นพิมพ์เล็กทั้งหมด
72
ตัวอย่างงาน
73
Private Sub cmdClear_Click() txtTEXT1.Text = "" txtTEXT1.SetFocus
ตัวอย่างงาน Private Sub txtTEXT1_Change() txtText2.Text = UCase(txtTEXT1.Text) txtText3.Text = LCase(txtTEXT1.Text) End Sub Private Sub cmdClear_Click() txtTEXT1.Text = "" txtTEXT1.SetFocus End Sub
74
การทำงานกับฟังก์ชันข้อความ
Str(Numeric) ใช้แปลง Numeric เป็น String Val(String) ใช้แปลง String เป็น Numeric
75
การทำงานกับฟังก์ชันข้อความ
IsNumeric(String) ตรวจสอบว่าเป็น Numeric หรือไม่ IsDate(String) ตรวจสอบว่าเป็น Date หรือไม่
76
การทำงานกับฟังก์ชันข้อความ
LTrim(String) ใช้ตัดช่องว่างทางด้านซ้ายของ String ออก RTrim(String) ใช้ตัดช่องว่างทาง ด้านขวาของ String ออก
77
การทำงานกับฟังก์ชันข้อความ
Trim(String) ใช้ตัดช่องว่างทั้งด้านซ้าย และขวาของ String Format(value , "รูปแบบ") ใช้กำหนดรูปแบบของข้อมูล
78
รูปแบบของวันที่ (Date)
"dd/mm/yy" "Short Date" "dd/mmm/yyyy" "Medium Date" "dd/mmmm/yyyy" "Long Date"
79
การทำงานกับฟังก์ชันทางวันและเวลา
Now จะให้ค่าวันที่และเวลา ณ ปัจจุบัน Time จะให้ค่าเวลา ณ ปัจจุบัน
80
รูปแบบของเวลา (Time) "HH:MM" "Short Time"
"HH:MM AMPM" "Medium Time" "HH:MM:SS" "Long Time"
81
ตัวอย่างงาน ตรวจสอบเวลาการทำงาน
82
ตัวอย่างงาน Dim a As Date Dim b As Date Sub Command1_Click() a = Time Text1.Text = Format(a, "HH:MM:SS") Text2.Text ="" Label1.Caption ="" End Sub
83
ตัวอย่างงาน Sub Command2_Click() b = Time Text2.Text = Format(b, "HH:MM:SS") End Sub Sub Command3_Click() Label1.Caption = Format(b - a, "HH:MM:SS")
84
If…Then…Else Statement
If เงื่อนไข Then Statement… Else End If
85
Flow-Chart condition Statement ; True False
86
If…Then…Statement If เงื่อนไข Then Statement…
87
If…Then…Else Statement
If เงื่อนไข Then Statement… Else End If If เงื่อนไข Then Statement… Elseif เงื่อนไข Then Else End if
88
ตัวอย่างการใช้ ElseIf
Dim Number, Digits, MyString Number = Text1.Text If Number < 10 Then Digits = 1 ElseIf Number < 100 Then Digits = 2 Else Digits = 3 End If
89
Unload Statement Unload ObjectName เช่น Private Command1_Click()
Unload Form1 'หรือ Unload Me End Sub
90
End หยุดการรันโปรแกรม
End Command End หยุดการรันโปรแกรม เช่น Private Command1_Click() End ' จบการทำงาน End Sub
91
ตัวอย่างงาน ตรวจสอบรหัสผ่าน Lcase(Text1.text)
Private Sub cmdOK_Click() If txtPass.Text = "basic" Then frmCalculate.Show Unload Me Else txtPass.Text = "" txtPass.SetFocus End If End Sub ตรวจสอบรหัสผ่าน Lcase(Text1.text)
92
ตัวอย่างงาน โปรแกรมตรวจสอบรหัสผ่าน
93
Lcase(Text1.text) ตัวอย่างงาน Private Sub Command1_Click()
If Text1.Text = "basic" Then Form1.Show Unload Me Else Text1.Text = "" Text1.SetFocus End If End Sub Private Sub Command2_Click() End End Sub Lcase(Text1.text)
94
Select Case Statement Select Case ตัวแปร Case เงื่อนไข1 หรือ ค่าคงที่1 statement: Case เงื่อนไข2 หรือ ค่าคงที่2 Case Else End Select
95
Flow-Chart condition value1 … value2 value n else S ; Statement ;
96
ตัวอย่างงาน การตรวจสอบเกรด
97
Private Sub CmdGrade_Click() Dim score As Integer Dim grade As String
ตัวอย่างงาน Private Sub CmdGrade_Click() Dim score As Integer Dim grade As String score = Val(txtmark.Text)
98
ตัวอย่างงาน Select Case score Case Is >= 80: grade = "A"
Case Is >= 70: grade = "B" Case Is >= 60: grade = "C" Case Is >= 50: grade = "D" Case Else: grade = "F" End Select lblgrade.Caption = txtName.Text & " your grade is " & grade End Sub
99
Check Box (properties)
Name Alignment Caption Value 0 (Unchecked) 1 (Checked) 2 (Grayed)
100
ตัวอย่างงาน แสดงวันที่และเวลา โดยใช้ Check Box
101
ตัวอย่างงาน Private Sub chkTime_Click() If chkTime.Value = 1 Then
lbltime.Caption = Format(Now, "HH:MM:SS") Else lbltime.Caption = "" End If End Sub
102
Private Sub Chkdate_Click()
If chkDate.Value = 1 Then lblDate.Caption = Format(Now,"dd/mmmm/yyyy") Else lblDate.Caption = "" End If End Sub
103
Option Button (properties)
Name Alignment Caption Value True (Select) False (Not Select)
104
ตัวอย่างงาน เลือกเพศโดยใช้ Option Button
105
Private Sub Optmale_Click() lblgender.Caption = "Male" End Sub
ตัวอย่างงาน Private Sub Optmale_Click() lblgender.Caption = "Male" End Sub Private Sub Optfemale_Click() lblgender.Caption = "Female" End Sub
106
ตัวอย่างงาน การคำนวณพื้นที่
107
Private Sub OptRectangle_Click()
txtnumber1.Text = "" txtNumber2.Text = "" lblResult.Caption = "" txtNumber1.SetFocus lblName1.Caption = "กว้าง" lblName2.Caption = "ยาว" lblName3.Caption = "พื้นที่สี่เหลี่ยม" End Sub
108
Private Sub OptTriangle_Click()
txtNumber1.Text = "" txtNumber2.Text = "" lblResult.Caption = "" txtNumber1.SetFocus lblName1.Caption = "ฐาน" lblName2.Caption = "สูง" lblName3.Caption = "พื้นที่สามเหลี่ยม" End Sub
109
Private Sub cmdCal_Click()
txtNumber1.SetFocus If Optrectangle.Value = True Then lblResult.Caption = Val(txtnumber1.Text) * Val(txtNumber2.Text) Else lblResult.Caption = 0.5 * Val(txtNumber1.Text) * Val(txtNumber2.Text) End If End Sub
110
Frame (properties) Name Caption
111
ตัวอย่างงาน ค้นหาตำแหน่งจากเพศและการศึกษา
112
เงื่อนไข การศึกษา ชาย หญิง ปริญญาตรี อาจารย์ เลขา
การศึกษา ชาย หญิง ปริญญาตรี อาจารย์ เลขา ปวส. ช่าง ประชาสัมพันธ์ ปวช. คนขับรถ แม่บ้าน
113
Private Sub cmdposition_Click()
If Optmale.Value = True Then If Optedu1.Value = True Then lblCareer.Caption = "อาจารย์" ElseIf Optedu2.Value = True Then lblCareer.Caption = "ช่าง" ElseIf Optedu3.Value = True Then lblCareer.Caption = "คนขับรถ" End If Else ' ElseIf Option2.Value = True Then
114
If Optedu1.Value = True Then
lblCareer.Caption = "เลขา" ElseIf Optedu2.Value = True Then lblCareer.Caption = "ประชาสัมพันธ์" ElseIf Optedu3.Value = True Then lblCareer.Caption = "แม่บ้าน" End If End Sub
115
MsgBox Prompt [,Buttons] [,Title]
Function MsgBox MsgBox Prompt [,Buttons] [,Title] Prompt “ข้อความที่ต้องการแสดง” Buttons ปุ่มทำงานและสัญลักษณ์ Title “ข้อความที่แสดงที่หัว Box”
116
ตัวอย่าง Message Box Icon Title Buttons
117
ตัวอย่างของสัญลักษณ์ (Icon)
vbCritical vbInformation vbExclamation vbQuestion 117
118
Function MsgBox ตัวแปร = MsgBox(Prompt [,Buttons] [,Title])
119
ตัวอย่างการใช้ Msgbox
120
HScrollBar และ VScrollBar (properties)
Name Min Max Scroll Box Min LargeChange LargeChange SmallChange SmallChange Value Max
121
Event Change เมื่อทำการเลื่อนที่ LargeChange หรือ SmallChange
Scroll เมื่อทำการเลื่อนที่ Scroll Box
122
ตัวอย่างงาน การตรวจสอบ Properties ของ Scrollbar กำหนด Properties Min = 0 Max = 100 LargeChange = 10 SmallChange = 2
123
Sub HScroll1_Change() lblInfo.Caption = "Value = " & HScroll1.Value End Sub Sub HScroll1_Scroll() lblInfo.Caption = "Value = " & HScroll1.Value End Sub
124
การเรียกใช้ค่าสี Object_Name.Properties = Color_Name เช่น
lblName.ForeColor = VbRed frmData.BackColor = VbGreen
125
ตัวอย่างงาน ปรับแต่งรูปแบบตัวอักษร
126
ตัวอย่างงาน ปรับแต่งรูปแบบตัวอักษร
128
Dim data As String Private Sub Form_Load() 'Width = 4125 Height = 1440 End Sub
129
Private Sub cmdFont_Click()
data = txtName.Text lblName.Caption = data 'Width = 4125 Height = 4080 End Sub
130
Private Sub chklowercase_Click()
If chklowercase.Value = 1 Then chkuppercase.Value = 0 lblName.Caption = LCase(data) Else lblName.Caption = data End If End Sub
131
Private Sub chkuppercase_Click()
If chkuppercase.Value = 1 Then chklowercase.Value = 0 lblName.Caption = UCase(data) Else lblName.Caption = data End If End Sub
132
Private Sub chkItalic_Click()
If chkitalic.Value = 1 Then lblName.Font.Italic = True Else lblName.Font.Italic = False End If End Sub
133
Private Sub chkBold_Click()
If chkbold.Value = 1 Then lblName.Font.Bold = True Else lblName.Font.Bold = False End If End Sub
134
Private Sub HScsize_Change()
lblName.Font.Size = HScsize.Value End Sub Private Sub Command3_Click() 'Width = 4125 Height = 1440
135
Private Sub optRed_Click()
lblName.ForeColor = vbRed End Sub Private Sub optBlue_Click() lblName.ForeColor = vbBlue
136
Private Sub cmdOk_Click()
'Width = 4125 Height = 1440 txtName.Text = lblName.Caption txtName.Font.Bold = lblName.Font.Bold txtName.Font.Italic = lblName.Font.Italic txtName.Font.Size = lblName.Font.Size txtName.ForeColor = lblName.ForeColor End Sub
137
การทำงานกับฟังก์ชันสี
QBColor(n) โดย n มีค่าตั้งแต่ เช่น Label1.BackColor = QBColor(1)
138
การทำงานกับฟังก์ชันสี
RGB(Red,Green,Blue) โดยค่าสีอยู่ในช่วง เช่น Label1.BackColor = RGB(0,0,255) Label1.ForeColor = RGB(255,0,255)
139
ตัวอย่างงาน การผสมสีโดยใช้ Scroll Bars
140
Private Sub Form_Load()
lblRed.Caption = "Red = " & HScRed.Value lblGreen.Caption = "Green = " & HScGreen.Value lblBlue.Caption = "Blue = " & HScBlue.Value lblShow.BackColor=RGB(0,0,0) lblshow.ForeColor=RGB(255,255,255) End Sub
141
Private Sub HScRed_Change() lblShow.BackColor = RGB(HScRed.Value, _
HScGreen.Value, HScBlueValue) lblShow.ForeColor = RGB(255 - HScRed.Value, _ 255 - HScGreen.Value, HScBlue.Value) lblRed.Caption = "Red = " & HScRed.Value End Sub และเหตุการณ์ Scroll
142
Private Sub HScGreen_Change()
lblShow.BackColor = RGB(HScRed.Value, _ HScGreen.Value, HScBlue.Value) lblShow.ForeColor = RGB(255 - HScRed.Value, _ 255 - HScGreenValue, 255 – HScBlue.Value) lblGreen.Caption = "Green = " & HScGreen.Value End Sub
143
Private Sub HScBlue_Change() lblShow.BackColor = RGB(HScRed.Value, _
HScGreen.Value, HScBlue.Value) lblShow.ForeColor = RGB(255 - HScRed.Value, _ 255 - HScGreen.Value, HScBlue.Value) lblBlue.Caption = “Blue = " & HScBlue.Value End Sub
144
LOOP
145
For…Next Statement For ตัวแปร = ค่าเริ่มต้น To ค่าสุดท้าย [ Step เพิ่ม/ลดค่าตัวแปร ] statement… Next ค่าตัวแปร
146
ตัวอย่าง For…Next Statement
For I = 0 To 100 Step 2 statement… Next I
147
Flow-Chart for loop Statement ; . end
148
แสดงตัวเลข 1 ถึง 20 Private Sub Form_Click() Dim i As Integer
ตัวอย่างงาน แสดงตัวเลข 1 ถึง 20 Private Sub Form_Click() Dim i As Integer For i = 1 To 20 Print i ; Next i End Sub
149
Do…Loop Statement Do while (เงื่อนไข) Statement : Loop
Do Until (เงื่อนไข) Statement : Loop
150
Do…Loop Statement (ต่อ)
Do Statement : Loop while (เงื่อนไข) Do Statement : Loop Until (เงื่อนไข)
151
Flow-Chart (Do While) condition True False Statement ; . end
152
Flow-Chart (Do…Until)
Statement ; . condition False True
153
แสดงตัวเลข 1 ถึง 20 ตัวอย่างงาน Dim i As Integer i = 1 i = 1
Private Sub Form_Click() Dim i As Integer i = 1 Do While (i <= 20) Print i i = i + 1 Loop End Sub Private Sub Form_Click() Dim i As Integer i = 1 Do Print i i = i + 1 Loop Until (i > 20) End Sub 152
154
แสดงตัวเลข 10 ลงไปหา 1 ตัวอย่างงาน Dim i As Integer i = 10
Private Sub Form_Click() Dim i As Integer i = 10 Do While (i >= 1) Print i i = i - 1 Loop End Sub Private Sub Form_Click() Dim i As Integer i = 10 Do Print i i = i - 1 Loop Until (i = 0) End Sub
155
While (เงื่อนไข) statements : Wend
While…Wend Statement While (เงื่อนไข) statements : Wend
156
แสดงตัวเลข 10 ลงไปหา 1 Private Sub Form_Click() Dim i As Integer
ตัวอย่างงาน แสดงตัวเลข 10 ลงไปหา 1 Private Sub Form_Click() Dim i As Integer i = 10 While i > 0 Print i i = i - 1 Wend End Sub
157
List Box (properties) Name Sorted Columns Style List Standard
ListIndex Text ListCount Sorted Style Standard Checkbox 156
158
ตัวอย่าง List Box
159
List1.AddItem “รายการ”, index
Method List1.AddItem “รายการ”, index List1.RemoveItem index List1.Clear
160
With …End With Statement
With Object_Name .Properties = Value .Method End With
161
Goto Statement Goto label Statement… label : Sub Command1_Click()
GoTo aa Label1.Caption = “VB" aa: Label1.Caption = "Siam” End Sub
162
On Error Goto… On Error Goto label Statement… label :
163
On Error Resume Next On Error Resume Next Statement…
164
คำสั่งการทำงานต่อเนื่อง
Resume :ทำงานซ้ำบรรทัดที่เกิด Error ขึ้น Resume Next : ทำงานบรรทัดถัด จากบรรทัดที่เกิด Error ขึ้น
165
Error Object เป็น Object ที่จัดเก็บข้อผิดพลาดที่ เกิดขึ้นในโปรแกรมขณะ Run Time รูปแบบ Err.Properties
166
Properties Number Description
167
On…Goto & On…GoSub On expression GoSub destinationlist On expression GoTo destinationlist
168
ตัวอย่างงาน a: Print "1" b: Print "2" End Sub
Private Sub Command1_Click() Dim n As Integer n = 1 On n GoTo a, b Exit Sub a: Print "1" b: Print "2" End Sub
169
ตัวอย่างงาน การย้ายรายการใน List Sorted = True
170
Private Sub Form_Load()
lstPrg.AddItem "Widows" lstPrg.AddItem "Word" lstPrg.AddItem "Excel" lstPrg.AddItem "Access" lstPrg.AddItem "Power Point" End Sub หรือ
171
Private Sub Form_Load()
With lstPrg .AddItem "Widows" .AddItem "Word" .AddItem "Excel" .AddItem "Access" .AddItem "Power Point" End With End Sub
172
Private Sub lstPrg_DblClick()
lstShow.AddItem lstPrg.Text lstPrg..RemoveItem lstPrg..ListIndex End Sub Private Sub lstShow_DblClick() lstPrg.AddItem lstShow.Text lstShow.RemoveItem lstShow.ListIndex
173
ตัวอย่างงาน การจัดการกับ List
174
Private Sub cmdADD_Click()
If Trim(txtData.Text) <> "" Then lstInfo.AddItem txtData.Text End If txtData.Text = "" txtData.SetFocus End Sub
175
Private Sub cmdRemove_Click()
If lstInfo.ListIndex >= 0 Then lstInfo.RemoveItem lstInfo.ListIndex lstInfo.ListIndex =0 End If End Sub Private Sub cmdClear_Click() lstInfo.Clear ' ลบข้อมูลทั้งหมด
176
MultiSelect=Extended
ตัวอย่างงาน การย้ายข้อมูลใน List 2 List MultiSelect=Extended
177
Private Sub Form_Load()
List1.AddItem "Pascal" List1.AddItem "Basic" List1.AddItem "C++" List1.AddItem "Delphi" List1.AddItem "Visual Basic" List1.AddItem "Visual C++" End Sub
178
Sub cmdMove_Click() Dim i As Integer Dim n As Integer n = List1.ListCount i = 0 Do While (i < n) If List1.Selected(i) Then List2.AddItem (List1.List(i)) List1.RemoveItem (i) Else i = i + 1 End If Loop End Sub
179
Private Sub cmdMoveall_Click()
Dim i As Integer For i = 0 To List1.ListCount - 1 List2.AddItem List1.List(i) Next i List1.Clear End Sub
180
Combo Box (properties)
Name Style Dropdown Combo Simple Combo Dropdown List โดยทั่วไปใช้งานเหมือน List Box
181
ตัวอย่างงาน การเปลี่ยนสีฟอร์มโดยใช้ Combo
182
ตัวอย่างงาน สีเขียวอ่อน สีม่วง สีทอง
183
Private Sub Form_Load()
cmbColor.AddItem "Blue" cmbColor.AddItem "Green" cmbColor.AddItem “Magenta" cmbColor.AddItem "Red" cmbColor.AddItem "Yellow" End Sub
184
Private Sub cmbColor_Click()
Select Case cmbColor.ListIndex Case 0: Me.BackColor = vbBlue Case 1: Me.BackColor = vbGreen Case 2: Me.BackColor = vbMagenta Case 3: Me.BackColor = vbRed Case 4: Me.BackColor = vbYellow End Select End Sub
185
ตัวแปร = InputBox(Prompt [,Title] [,Default])
Function InputBox ตัวแปร = InputBox(Prompt [,Title] [,Default]) Prompt : “ข้อความที่ต้องการแสดง” Title : “ข้อความที่แสดงที่หัวของ Box” Default : ค่าปกติที่ตั้งไว้
186
ตัวอย่างของ InputBox Title Prompt
187
ตัวอย่างงาน ตอบคำถามจาก Question แล้วแสดงว่าตอบถูกกี่ข้อ
188
Dim n As Integer Dim Ans As String Private Sub Form_Load() n = 0 End Sub
189
Private Sub cmdQuestion1_Click()
Ans = InputBox("วิชานี้คือวิชา ?" & Chr(13) & _ "VB, Delphi", "Question") If LCase(Ans) = "vb" Then n = n + 1 End If cmdQuestion2.Enabled = True cmdQuestion1.Enabled = False End Sub
190
Private Sub cmdQuestion2_Click()
Ans = InputBox("ตัวอย่างนี้ใช้ฟังก์ชันใด ?" _ & Chr(13) & "MsgBox, InputBox", "Question") If LCase(Ans) = "inputbox" Then n = n + 1 End If cmdQuestion3.Enabled = True cmdQuestion2.Enabled = False End Sub
191
Private Sub cmdQuestion3_Click()
Ans = InputBox("ตัวแปรที่ใช้รับค่าจากฟังก์ชัน InputBox เป็นตัวแปรชนิดใด ?" & Chr(13) & _ "Integer, String", "Question") If LCase(Ans) = "string" Then n = n + 1 End If cmdQuestion3.Enabled = False lblResult.Caption = "ท่านตอบคำถามถูก " & n & " ข้อ" End Sub
192
DriveListBox (properties)
Name Drive เช่น EditPlus Event ส่วนใหญ่ใช้ Change
193
DirListBox (properties)
Name Path Event ส่วนใหญ่ใช้ Change
194
FileListBox (properties)
Name Path Filename Pattern เช่น *.exe;*.xls Event ส่วนใหญ่ใช้ Click
195
ตัวอย่างงาน แสดงชื่อไฟล์ และ Path ของไฟล์
196
txtPath.Text = File1.Path txtFilename.Text = File1.FileName End Sub
Sub File1_Click() txtPath.Text = File1.Path txtFilename.Text = File1.FileName End Sub Sub Drive1_Change() Dir1.Path = Drive1.Drive Sub Dir1_Change() File1.Path = Dir1.Path
197
Timer (properties) Name Enabled Interval Event ใช้ Timer
198
การทำงานกับฟังก์ชันทางวันและเวลา
Now จะให้ค่าวันที่และเวลา ณ ปัจจุบัน Time จะให้ค่าเวลา ณ ปัจจุบัน
199
นาฬิกาดิจิตอลจาก Timer
ตัวอย่างงาน นาฬิกาดิจิตอลจาก Timer 198
200
Private Sub Timer1_Timer() lblTime.Caption = Time End Sub
201
ตัวแปร Static เป็นตัวแปรที่ไม่ถูกทำลายหลังจาก
จบโปรแกรมย่อย (แต่ละ Event) รูปแบบ Static Name As Data_Type
202
ตัวอย่างงาน นับจำนวนการกดปุ่ม
203
' หรือประกาศตัวแปร n เป็นแบบ Private
Private Sub cmdCount_Click() Static n As Integer n = n + 1 lblShowNumber.Caption = "Count = " & n End Sub ' หรือประกาศตัวแปร n เป็นแบบ Private
204
ตัวอย่างงาน ตรวจสอบ Password Dim n As Integer Dim x As Integer
205
Private Sub cmdOK_Click()
n = n + 1 If LCase(txtPassword.Text) = “dusit" Then frmCaluculate.Show ‘form ที่ต้องการแสดง Unload Me Else x = MsgBox("รหัสไม่ถูกต้อง" & Chr(13) & _ " ต้องการป้อนอีกครั้งหรือไม่", 5, "Answer")
206
If n < 3 And (x = 4) Then txtPassword.Text = "" txtPassword.SetFocus ElseIf x = 2 Then End Else MsgBox "ป้อนรหัสผิด 3 ครั้ง", 0, "Answer" End If End Sub
207
ใช้ Timer กำหนดให้ Label เคลื่อนที่
ตัวอย่างงาน ใช้ Timer กำหนดให้ Label เคลื่อนที่ คุณสมบัติของ Timer Enabled = False Interval = 510
208
ตัวอย่างงาน Private Sub cmdStart_Click() If cmdStart.Caption = "เริ่ม" Then Timer1.Enabled = True cmdStart.Caption = "หยุด" Else Timer1.Enabled = False cmdStart.Caption = "เริ่ม" End If End Sub
209
Private Sub Timer1_Timer()
lblWalk.Left = lblWalk.Left + 100 End Sub
210
Private Sub Timer1_Timer()
lblWalk.Left = lblWalk.Left + 100 If lblWalk.Left >= Me.Width Then lblWalk.Left = 0 End If End Sub
211
Private Sub cmdDecrease_Click()
Timer1.Interval = Timer1.Interval - 50 End Sub
212
Private Sub cmdDecrease_Click()
Timer1.Interval = Timer1.Interval - 50 If Timer1.Interval <= 10 Then cmdDecrease.Enabled = False End If End Sub
213
Private Sub cmdIncrease_Click()
cmdDecrease.Enabled = True Timer1.Interval = Timer1.Interval + 50 End Sub
214
กำหนดให้ Label วิ่งรอบฟอร์ม
Sub Form_Load() fac = "b" End Sub
215
Private Sub Timer1_Timer() If fac = "r" Then
กำหนดให้ Label วิ่งรอบฟอร์ม Dim fac As String Private Sub Timer1_Timer() If fac = "r" Then lblWalk.Left = lblWalk.Left + 75 lblWalk.Top = lblWalk.Top - 50 If lblWalk.Top < 0 Then fac = "t" End If 215 215
216
ElseIf fac = "t" Then lblWalk.Left = lblWalk.Left + 75 lblWalk.Top = lblWalk.Top + 50 If lblWalk.Left >= Me.Width Then fac = "l" End If
217
ElseIf fac = "l" Then lblWalk.Left = lblWalk.Left - 50
lblWalk.Top = lblWalk.Top + 50 If lblwalk.Top >= Me.Height Then fac = "b" End If
218
ElseIf fac = "b" Then lblWalk.Left = lblWalk.Left - 50 lblWalk.Top = lblWalk.Top - 50 If lblWalk.Left < 0 Then fac = "r" End If End Sub
219
PictureBox (properties)
Name AutoSize BorderStyle Picture ใช้ในด้านกราฟิก
220
ImageBox (properties)
Name BorderStyle Picture Stretch ใช้แสดงรูปภาพบน Form
221
Method ของ Picture และ Image
LoadPicture(“Directory\...\ชื่อไฟล์ ภาพ”) เช่น Image1.Picture =LoadPicture("c:\cat.jpg")
222
ตัวอย่างงาน เมื่อคลิกฟอร์ม ให้ทำการสลับภาพ
223
Sub Form_Click() Image2.Picture = Picture1.Picture Picture1.Picture = Image1.Picture Image1.Picture = Image2.Picture End Sub
224
ตัวอย่างงาน แสดงภาพจากไฟล์ที่เลือก
225
Sub Dir1_Change() File1.Path = Dir1.Path End Sub Sub Drive1_Change() Dir1.Path = Drive1.Drive
226
Sub File1_Click() txtPath.Text = File1.Path txtFile.Text = File1.FileName Image1.Picture = LoadPicture(File1.Path & _ "\" & File1.FileName) ' ตั้งค่าที่ Pattern ด้วย End Sub
227
แก้ปัญหารูปที่ Root Drive A:\ และ C:\
Sub File1_Click() txtPath.Text = File1.Path txtFile.Text = File1.FileName If File1.Path = "C:\" Or File1.Path = "a:\" Then Image1.Picture = LoadPicture(File1.Path _ & File1.FileName) Else Image1.Picture = LoadPicture(File1.Path & _ "\" & File1.FileName) End If End Sub
228
Line (properties) Name BorderColor BorderStyle BorderWidth X1 X2 Y1 Y2
229
คำสั่งในการวาดเส้นตรง
line(x1,y1) – (x2,y2),Color เช่น Line (500, 200)-(2000, 1000), QBColor(11)
230
ตัวอย่างงาน สร้างตารางดังรูป
231
ตัวอย่างงาน Sub frmShowline_Click() Dim i As Integer For i = 1 To 4 Line (500, 500 * i)-(2000, 500 * i) Line (500 * i, 500)-(500 * i, 2000) Next i End Sub
232
Shape (properties) Name BackStyle BackColor BorderColor BorderStyle
BorderWidth FillColor FillStyle Shape
233
ตัวอย่างงาน Random Shape
234
Sub cmdShow_Click() Shape1.Shape = (Rnd * 5) Shape1.FillColor = QBColor(Rnd * 15) Shape1.FillStyle = (Rnd * 7) Shape1.BorderColor = QBColor(Rnd * 15) End Sub
235
Circle(x,y),radius,color
คำสั่งในการวาดวงกลม Circle(x,y),radius,color เช่น Circle (1000, 1000), 500
236
ตัวอย่างงาน วงกลมซ้อน
237
Sub Timer1_Timer() Dim i As Integer For i = 1 To 2000 Step 10 Circle (Me.Width \ 2, Me.Height \ 2), i, _ RGB(Rnd * 255, Rnd * 255, Rnd * 255) Next i End Sub
238
การทำงานกับ Event ของ Mouse
MouseDown เมื่อกดปุ่มของเมาส์ MouseUp เมื่อปล่อยปุ่มของเมาส์ MouseMove เมื่อเลื่อนเมาส์
239
การใช้ปุ่มบน Mouse พร้อมกับ Shift
ตัวแปร Button ตัวแปร Shift 1 ปุ่มซ้าย 1 กดปุ่ม Shift ร่วม 2 ปุ่มขวา 2 กดปุ่ม Ctrl ร่วม 4 ปุ่มกลาง 4 กดปุ่ม Alt ร่วม
240
พารามิเตอร์ของเหตุการณ์ที่เกี่ยวกับเมาส์
Private Sub ชื่อออปเจ็คต์_MouseDown( Button As Integer, _ Shift As Integer, X As Single, Y As Integer) Private Sub ชื่อออปเจ็คต์_MouseUp( Button As Integer, _ Shift As Integer, X As Single, Y As Integer) Private Sub ชื่อออปเจ็คต์_MouseMove( Button As Integer, _ Shift As Integer, X As Single, Y As Integer)
241
ตัวอย่างงาน การกำหนดให้ Label เคลื่อนที่ตาม Mouse
242
Private Sub Form_MouseMove(Button As Integer, _
Shift As Integer, X As Single, Y As Single) Me.Caption = " Value X = " & X & " Value Y = " & Y Label1.Move X, Y End Sub
243
ตัวอย่างงาน วาดเส้นโดยใช้ Mouse
244
Dim d As Boolean Dim CurrentX as Single,CurrentY as Single Sub Form_MouseDown(Button As Integer, _ Shift As Integer, X As Single, Y As Single) d = True CurrentX = X CurrentY = Y End Sub
245
Sub Form_MouseUp(Button As Integer, _
Shift As Integer, X As Single, Y As Single) d = False End Sub
246
Sub Form_MouseMove(Button As Integer, _
Shift As Integer, X As Single, Y As Single) If d = True Then Line -(X, Y) ' Line Form1.CurrentX,Form1.CurrentY–(X,Y) End Sub
247
กดเมาส์ซ้ายค้างวาดเส้น กดเมาส์ขวาค้างวาดวงกลม
Sub Form_MouseMove(Button As Integer, _ Shift As Integer, X As Single, Y As Single) If d = True Then If Button = 1 Then Line -(X, Y) Else Circle (X, Y), 100, QBColor(Rnd * 15) End If End Sub
248
กดเมาส์ซ้ายค้างวาดเส้น กดเมาส์ซ้ายค้างพร้อมปุ่ม Shift วาดวงกลม
Sub Form_MouseMove(Button As Integer, _ Shift As Integer, X As Single, Y As Single) If d = True Then If Button = 1 And Shift = 1 Then Circle (X, Y), 100, QBColor(Rnd * 15) Else Line -(X, Y) End If End Sub
249
การใช้ Common Dialog เมนู Project Components…
Microsoft Common Dialog Control 6.0
250
Dialog Open
251
Dialog Font
252
Dialog Color
253
ตัวอย่างงาน การเรียกใช้ Dialog 251
254
Common Dialog (properties)
Name Action DialogTitle Filter FilterIndex Flags InitiDir CancelError
255
Common Dialog (properties) (ต่อ)
FileName FontName FontSize FontBold FontItalic FontStrikethru FontUnderline Color
256
Common Dialog (Method)
ShowOpen ShowSave ShowColor ShowPrinter ShowFont ShowHelp
257
ตัวอย่างการใช้ Filter
.Filter= "All Files (*.*)|*.*" .Filter= "All Files (*.*)|*.*|Text Files (*.txt)|*.txt" "All Pictures (*.bmp;*.gif;*.jpg)|*.bmp;*.gif;*.jpg" FilterIndex = 2
258
การเรียกใช้ Dialog Open
Private Sub cmdShowOpen_Click() dlg1.Flags = cdlOFNHideReadOnly dlg1.Filter = "All Files (*.*)|*.*|Text Files" & _ "(*.txt)|*.txt" dlg1.FilterIndex = 2 dlg1.ShowOpen MsgBox dlg1.FileName End Sub
259
การเรียกใช้ Dialog Color
Private Sub cmdShowColor_Click() dlg1.Flags = cdlCCRGBInit dlg1.ShowColor Label1.ForeColor = dlg1.Color End Sub
260
การเรียกใช้ Dialog Font
Private Sub cmdShowFont_Click() dlg1.Flags = cdlCFBoth dlg1.ShowFont lblShow.FontName=dlg1.FontName lblShow.FontSize=dlg1.FontSize lblShow.FontBold=dlg1.FontBold lblShow.FontItalic=dlg1.FontItalic End Sub
261
Private Sub cmdExit_Click() End End Sub
262
การเรียกใช้ Dialog Save
Private Sub cmdShowSave_Click() dlg1.Flags = cdlOFNHideReadOnly dlg1.Filter = "All Files (*.*)|*.*|Text Files" & _ "(*.txt)|*.txt" dlg1.FilterIndex = 2 dlg1.ShowSave MsgBox dlg1.FileName End Sub
263
การเรียกใช้ Dialog Print
Private Sub cmdShowPrinter_Click() dlg1.ShowPrinter End Sub
264
การเรียกใช้ Dialog Help
Private Sub cmdShowHelp_Click() dlg1.HelpFile = _ "c:\windows\help\winhlp32.hlp" dlg1.HelpCommand =cdlHelpContents dlg1.ShowHelp End Sub
265
Multiple Document Interface
MDI Form Multiple Document Interface สร้าง MDI Form Project Add MDI Form เลือก MDI Form Open
266
ตัวอย่างงาน การใช้งาน MDI Form MDI Form MDI Child Form
267
การกำหนดฟอร์มลูกของ MDI Form
ให้กำหนด Properties MDIChild ของฟอร์มลูกเป็น True
268
การสร้างเมนู (Menu) Tools Menu Editor...
Caption : ข้อความที่จะแสดงเป็นเมนู Name : กำหนดชื่อเมนู คลิกปุ่ม : เพื่อกำหนดเมนูย่อย ** สร้างได้ 6 ระดับ
269
ตัวอย่างงาน สร้างเมนูดังรูป
270
เมนูไฟล์ Caption Name &File mnufile Openform1 mnuform1
- mnuline Exit mnuexit
271
เมนู Font Caption Name &Font mnufont 10 mnu10 12 mnu12 15 mnu15
Color mnucolor Red mnured Green mnugreen Blue mnublue
272
การเขียนคำสั่งใน Menu
Sub mnuform1_Click() Form1.Show End Sub Sub mnuform2_Click() Form2.Show Sub mnuexit_Click() End End Sub
273
สร้าง MDI Form และเมนู ดังรูป
274
กำหนดให้ คุณสมบัติของ Form1 และ Form2
275
ดูความแตกต่างระหว่างฟอร์ม 2 และ 3
Sub mnuform1_Click() Form1.Show End Sub Sub mnuform2_Click() Form2.Show Sub mnuform3_Click() Form3.Show End Sub Sub mnuexit_Click() End
276
Popup Menu Tools Menu Editor...
กำหนดรายการเมนูเหมือนการสร้าง เมนู โดยรายการหลักให้ ยกเลิก Visible ออก
277
สร้าง Popmenu ตัวอย่างงาน Caption Name popup mnupopup Cut mnucut
Copy mnucopy Paste mnupaste Visible=False
278
การเรียกใช้งาน Popup Menu
Popupmenu PopupMenu_Name เช่น PopupMenu mnupopup
279
การกำหนดให้ popup menu แสดงเมื่อคลิกเมาส์ขวา
Private Sub Form_MouseDown(Button As Integer, _ Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu mnupopup End If End Sub
280
โปรแกรมย่อย (Procedure)
Sub (Sub Program) Function
281
Sub Program Sub ชื่อโปรแกรมย่อย (parameter) Statement : End Sub
282
ขอบเขตของ Sub Program Private Sub ชื่อโปรแกรมย่อย (parameter)
เป็นโปรแกรมที่ใช้ได้ใน Form นั้นๆ Public Sub ชื่อโปรแกรมย่อย (parameter) เป็นโปรแกรมที่ใช้ได้ในทุกๆ Form Sub ชื่อโปรแกรมย่อย (parameter) เหมือนกับ Public Sub
283
การเรียกใช้ Sub Program
Call ชื่อโปรแกรมย่อย(ค่าที่ส่ง) หรือ ชื่อโปรแกรมย่อย(ค่าที่ส่ง)
284
ตัวอย่างงาน Sub Program แบบไม่มี Parameter
285
Sub Color() lblShow.BackColor = RGB(HScroll1.Value, _ HScroll2.Value, HScroll3.Value) lblShow.ForeColor = RGB(255 - HScroll1.Value, _ 255 - HScroll2.Value, HScroll3.Value) End Sub
286
Private Sub HScRed_Change()
Call Color lblRed.Caption = "Red = " & HScRed.Value End Sub Private Sub HScGreen_Change() lblGreen.Caption = "Green = " & HScGreen.Value
287
Private Sub HScBlue_Change()
Call Color lblBlue.Caption = “BLUE = " & HScBlue.Value End Sub
288
ตัวอย่างงาน Sub Program แบบมี Parameter
289
Sub table(r As Integer, c As Integer)
Dim i As Integer For i = 1 To r + 1 Line (500, 500 * i)-(500 * (c + 1), 500 * i) Next i For i = 1 To c + 1 Line (500 * i, 500)-(500 * i, 500 * (r + 1)) End Sub
290
Private Sub cmdTable_Click()
Me.Cls Call table(Val(txtRow.Text), Val(txtCol.Text)) txtRow.Text = "" txtCol.Text = "" txtRow.SetFocus End Sub
291
Function Function ชื่อ function (parameter) As datatype Statement : End Function
292
ตัวแปร หรือ Object = ชื่อ Function(ส่งค่า Parameter)
293
ตัวอย่างงาน การหาค่า Factorial
294
Function Fac(n As Integer) As Long
If n = 1 Then Fac = 1 Else Fac = n * Fac(n - 1) End If End Function
295
Private Sub cmdFac_Click()
Dim data As Long data = Fac(Val(txtNumber.Text)) lblResult.Caption = txtNumber.Text & " != " & data txtNumber.Text = "" txtNumber.SetFocus End Sub
296
การประกาศตัวแปร Array
Dim ชื่อตัวแปร(UpperBound) As Type เช่น Dim Cost(5) As Integer Cost(0) = 20 Cost(5) = val(Text1.Text)
297
การประกาศตัวแปร Array
Dim ชื่อตัวแปร(LBound To UBound) As Type เช่น Dim Score(1 To 4) As Integer Dim Name(97 To 100) As String
298
Object แบบ Array ถ้าต้องการใช้ Object แบบ Array ให้ทำการคัดลอก Object
299
ตัวอย่างงาน หาค่าเฉลี่ยโดยใช้ Array คัดลอก Text1 อีก 2 ตัว
300
Private Sub cmdAverage_Click()
Dim n(2) As Integer Dim i As Integer Dim sum As Integer sum = 0 For i = 0 To 2 n(i) = Val(txtNum(i).Text) sum = sum + n(i) Next i lblResult.Caption = "Average = " & sum / 3 End Sub
301
การทำงานกับฐานข้อมูล
299
302
Data Control (properties)
Name Caption Connect DatabaseName RecordSource
303
Method ของ Record Set AddNew Update CancelUpdate Delete Refresh
304
Method ของ Record Set MoveFirst MoveLast MoveNext MovePrevious
FindFirst FindLast FindNext FindPrevious
305
การกำหนดให้ Object อ้างข้อมูลในฐานข้อมูลได้
กำหนดคุณสมบัติ DataSource DataField
306
การเขียนคำสั่งโปรแกรมกับ Data Control
การย้ายไปยังเรคคอร์ดต่างๆ ใน ReccordSet MoveFirst ย้ายไปยังเรคคอร์ดแรก MoveLast ย้ายไปยังเรคคอร์ดสุดท้าย MoveNext ย้ายไปยังเรคคอร์ดถัดไป MovePrevious ย้ายไปยังเรคคอร์ดก่อนหน้า Move ย้ายไปยังเรคคอร์ดที่ระบุ
307
การเขียนคำสั่งโปรแกรมกับ Data Control
การค้นหาข้อมูลใน ReccordSet FindFirst ค้นหาเรคคอร์ดแรกที่ตรงกับเงื่อนไข FindLast ค้นหาเรคคอร์ดสุดท้ายที่ตรงกับเงื่อนไข FindNext ค้นหาเรคคอร์ดถัดไปที่ตรงกับเงื่อนไข FindPrevious ค้นหาเรคคอร์ดก่อนหน้าที่ตรงกับเงื่อนไข
308
แสดงข้อมูลจากฐานข้อมูลที่สร้างขึ้น
ตัวอย่างงาน แสดงข้อมูลจากฐานข้อมูลที่สร้างขึ้น Data1 กำหนด DatabaseName และ RecordSource Text กำหนด DataSource และ DataField
309
Private Sub cmdAdd_Click() ' ปุ่ม Add
Data1.Recordset.AddNew txtId.SetFocus cmdOK.Visible = True cmdADD.Visible = False End Sub
310
Private Sub cmdOK_Click() 'ปุ่ม OK Data1.Recordset.Update
cmdADD.Visible = True cmdOK.Visible = False End Sub เมื่อทำการรันให้ ปุ่ม OK ซ้อนปุ่ม Add
311
Private Sub cmdDelete_Click() 'ปุ่ม Delete
X = MsgBox("Delete " & Text2.Text & _ " Yes or No ?", 1, "Check Data") If X = 1 Then Data1.Recordset.Delete Data1.Recordset.MoveFirst End If End Sub
312
Private Sub cmdFind_Click() 'ปุ่ม Find
Dim str As String str = "id='" & txtEnID.Text & "'" Data1.Recordset.FindFirst str If Data1.Recordset.NoMatch Then MsgBox "Data Not Found" End If txtEnID.Text = "" txtEnID.SetFocus End Sub
314
' ให้ใส่ตำแหน่งที่มีอยู่ใน Database
Private Sub Form_Load() cmbPosition.AddItem "Manager" cmbPosition.AddItem "Saleman" cmbPosition.AddItem “Reception" End Sub
315
Dim t As String Private Sub cmdFind1_Click() 'ปุ่ม Find If optName.Value = True Then t = "name='" & txtFindName.Text & "'" ElseIf optSex.Value = True Then If optMale.Value = True Then t = "sex='f‘ " Else t = "sex='m‘ " End If
316
ต่อปุ่ม Find ElseIf optPosition.Value = True Then
t = "position='" & cmbPostion.Text & "'" End If Data1.Recordset.FindFirst t If Data1.Recordset.NoMatch Then MsgBox "Data Not Found", 16 End Sub
317
Private Sub cmdFindNext_Click() 'ปุ่ม FindNext
Data1.Recordset.FindNext t If Data1.Recordset.NoMatch Then MsgBox "End of Data", 32 End If End Sub
318
ตัวอย่างงาน ป้อน user name และ password เพื่อเข้าไปใช้ Database
ถ้าป้อน admin และ password = dusit สามารถใช้ Database ได้ครบ ถ้าป้อน user และ password = sitd สามารถใช้ Database บางส่วน
319
Private Sub cmdOK_Click()
If txtUser.Text = "admin" And txtPass.Text = “dusit" Then Form35.Visible = True Form36.Visible = False ElseIf txtUser.Text = "user" And txtPass.Text = "masi" Then Form35.Command1.Visible = False Form35.Command3.Visible = False
320
Else MsgBox "Password or User name not Correct", 16 txtUser.SetFocus txtUser.SelStart = 0 txtUser.SelLength = Len(Text1.Text) txtPass.Text = "" End If End Sub Sub cmdCancel_Click() End End Sub
321
จบบทเรียน 319
งานนำเสนอที่คล้ายกัน
© 2025 SlidePlayer.in.th Inc.
All rights reserved.