งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Visual Basic 6.0 1. ความเป็นมาของ Visual Basic พัฒนามาจากภาษา QBASIC เป็นภาษาที่เหมาะกับการเริ่มต้น Visual Basic V. 1.0 เมื่อปี 1991 Visual Basic V. 6.0.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Visual Basic 6.0 1. ความเป็นมาของ Visual Basic พัฒนามาจากภาษา QBASIC เป็นภาษาที่เหมาะกับการเริ่มต้น Visual Basic V. 1.0 เมื่อปี 1991 Visual Basic V. 6.0."— ใบสำเนางานนำเสนอ:

1 Visual Basic 6.0 1

2 ความเป็นมาของ Visual Basic พัฒนามาจากภาษา QBASIC เป็นภาษาที่เหมาะกับการเริ่มต้น Visual Basic V. 1.0 เมื่อปี 1991 Visual Basic V. 6.0 เมื่อปี 1998 Visual Studio.NET เมื่อปี

3 ทำไมต้องเริ่มที่ Visual Basic 1. ง่ายต่อการเรียนรู้ 2. ความนิยมของตัวภาษา 3. เป็นซอฟต์แวร์ของ Microsoft 4. การพัฒนาอย่างต่อเนื่อง 3

4 ทำไมต้องเริ่มที่ Visual Basic 5. Visual Basic for Application (VBA) ในชุด Microsoft Office 6. VB Script Edition ใช้ในการเขียน สร้าง Home Page 7. ASP (Active Server Page) 4

5 การเขียนโปรแกรมแบบ Event-driven การทำงานของโปรแกรมจะขึ้นอยู่กับ การกระทำกับส่วนประกอบต่างๆ ของ หน้าต่าง (Window) ของโปรแกรม เช่น ปุ่มต่างๆ, เลื่อนเมาส์ การทำงานจะเป็นไปตามเหตุการณ์ (Event) ที่เกิดขึ้น 5

6 การเขียนโปรแกรมแบบ Procedural โปรแกรมเมอร์ต้องเขียน Code ควบคุมการทำงานของโปรแกรมเอง ทั้งหมด โดยต้องตรวจสอบเหตุการณ์ ต่างๆ ที่เกิดขึ้นด้วยตนเอง 6

7 ขั้นตอนการออกแบบโปรแกรม 1. ศึกษาความต้องการของผู้ใช้ 2. ออกแบบหน้าจอของโปรแกรม และขั้นตอนการทำงานของ โปรแกรม 3. เริ่มเขียนและพัฒนาโปรแกรม 4. รวบรวมและทดสอบโปรแกรม 5. ส่งมอบโปรแกรมสู่ผู้ใช้ 7

8 รุ่นต่างๆ ของ Visual Basic Learning Edition Professional Edition Enterprise Edition 8

9 การติดตั้งโปรแกรม ระบบปฏิบัติการ Windows 98-XP CPU Pentium ขึ้นไป หน่วยความจำ (RAM) 32 MB ขึ้นไป CD-ROM, Mouse, Keyboard แผ่นโปรแกรม Microsoft Visual Studio 6.0  แผ่นโปรแกรม MSDN เป็นส่วนของ Help 9

10 คุณสมบัติของ Visual Basic  คอมไพเลอร์และการเขียนโปรแกรม บน Microsoft Windows  หลักการของ OOP (Object Oriented Programming) 10

11 ส่วนประกอบของ Visual Basic Object Properties Method Event 11

12 Button Form Option Checkbox Textbox 12

13 การเรียกใช้งาน ปุ่ม Start >> Programs >> Microsoft Visual Studio 6.0 >> Microsoft Visual Basic

14 ส่วนประกอบของ Visual Basic แถบ Title Bar แถบ Menu Bar แถบ Tool Bar หน้าต่าง Form Windows ◦ View  Object 14

15 ส่วนประกอบของ Visual Basic หน้าต่าง Project Explorer ◦ View  Project Explorer หน้าต่าง Properties ◦ View  Properties Window 15

16 ส่วนประกอบของ Visual Basic หน้าต่าง Form Layout ◦ View  Form Layout Window แถบเครื่องมือ Toolbox ◦ View  Toolbox 16

17 เริ่มต้นการสร้าง Application 17

18 การสร้าง Application ใหม่ File  New Project เลือก Standard EXE คลิกปุ่ม OK 18

19 การบันทึก Application การบันทึกจะบันทึกแยก ระหว่าง Form กับ Project File  Save Form หรือ Project ตั้งชื่อฟอร์ม หรือ ชื่อ project คลิกปุ่ม Save 19

20 การเพิ่ม Form ใหม่ Project  Add Form หรือ คลิก Toolbar ในการเพิ่ม Form 20

21 การเพิ่ม Form ที่มีอยู่แล้ว Project  Add File เลือกฟอร์มที่ต้องการ คลิกปุ่ม Open 21

22 ยกเลิก Form ออก เลือกฟอร์ม Project  Remove ชื่อForm 22

23 การ Run Application Run  Start หรือ กดคีย์ F5 หรือใช้ Toolbar 23

24 การ Stop Application Run  End หรือ ใช้ Toolbar 24

25 การกำหนดฟอร์มที่รัน เมนู Project  Project Properties…  แท็บ General กำหนดที่ Startup Object 25

26 พื้นฐานที่ในการสร้างโปรแกรมใน VB6  การสร้างคอนโทรลบนฟอร์ม  การย้ายคอนโทรล  การเปลี่ยนขนาดคอนโทรล  การลบคอนโทรลออกจากฟอร์ม 26

27 พื้นฐานที่ในการสร้างโปรแกรมใน VB6  การกำหนดคุณสมบัติของคอนโทรล  กำหนดที่หน้าต่าง Properties Windows  Object List Box: แสดงรายชื่อของ คอนโทรลทั้งหมดในฟอร์ม  Properties List: แสดงชื่อคุณสมบัติและ ค่าที่กำหนดสำหรับคอนโทรลที่เราเลือก  Description Pane: แสดงคำอธิบายสั้นๆ เกี่ยวกับคุณสมบัติที่เราเลือก  กำหนดโดยการเขียน Code คำสั่ง 27

28 พื้นฐานที่ในการสร้างโปรแกรมใน VB6  การเขียน Code คำสั่งเพื่อตอบสนองต่อ Event  เปิดหน้าต่าง Code Editor  ด้านซ้ายสำหรับเลือกชื่อ Object  ด่านขวาสำหรับกำหนด Event  ใส่คำสั่งลงไประหว่างข้อความ Private Sub _ กับ End Sub เป็นตัวบอกว่าคำสั่งที่ตอบสนองนั้นเริ่มต้นและจบลงที่ใด 28

29 การกำหนด Properties โดยการเขียนโค้ด Object_Name.Properties_Name = ค่าของproperties เช่น Form1.Caption = “โปรแกรมการคำนวณภาษี" Form1.FontSize = 20 29

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 31

32 Properties ของ Form Name BackColor ForeColor 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 34

35 การใช้ Method โดยการเขียนโค้ด Object_Name.Method_Name [พารามิเตอร์ของ Method] เช่น Form1.Print "Siam Computer" Me.Show 35

36 Event ของ Form Activate เมื่อฟอร์ม Activate Clickเมื่อคลิกที่ฟอร์ม DblClickเมื่อดับเบิ้ลคลิกที่ฟอร์ม Loadเมื่อเปิดฟอร์มขึ้นมาทำงาน UnLoadเมื่อปิดฟอร์ม 36

37 ตัวอย่างงาน Sub Form_Activate( ) Form1.FontSize=20 Print “Test Visual Basic” Print “Siam Computer” End Sub 37

38 ตัวอย่างงาน Sub Form_Activate( ) Form1.Font.Size=20 Print “Test Visual Basic” ; Print “Siam Computer” CurrentX = 1500 CurrentY = 1000 Print “New Position” End Sub ( ) เพิ่ม เซมิโค ลอน ( ; ) 38

39 ตัวอย่างที่ 2 คอนโทรล คุณสมบัติค่าที่กำหนด Form NameForm1 AutoRedrawTrue CommandButton NameCommand1 CaptionClear 39

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 40

41 Object พื้นฐาน ตัวแปรและ Operator 41

42 Label (properties) Name Alignment AutoSize BorderStyle BackStyle Caption Left Top 42

43 Text Box (properties) Name Text MaxLenght PasswordChar Multiline ScrollBars TabIndex เริ่มที่ 0 TabStop ToolTipText 43

44 Method Object_Name.SetFocus กำหนดให้ cursor ไป focus ที่ Object เช่น Text1.Setfocus Command1. Setfocus 44

45 Properties.. SelStartกำหนดตำแหน่งเริ่มเลือก SelLengthกำหนดความยาวที่ต้องการ เลือกข้อความ 45

46 Event Changeเมื่อมีการเปลี่ยนแปลงที่ Text GotFocusเมื่อ Text ได้รับ Focus LostFocusเมื่อ Text สูญเสีย Focus 46

47 Command Button (properties) Name Caption Default Picture Style 47

48 ตัวอย่างงาน หาผลคูณระหว่าง 2 Text Box 48

49 Sub cmdMultiply_Click() a = txtnum1.Text b = txtnum2.Text lblResult.Caption = a & " * " & b & " = " & a * b End Sub Source Code 49

50 Operator ในการเชื่อมต่อข้อมูล & และ + ใช้ในการเชื่อมข้อมูล ' ใช้ในการเปลี่ยนประโยคคำสั่งเป็นComment 50

51 การเปลี่ยน Font ใน View Code เพื่อให้หน้าต่าง Code แสดง ภาษาไทยได้ เมนู Tools  Option…  Editor Format ในช่อง Font ต้องเลือก Font ที่ลง ท้ายด้วย UPC หรือ DSE เช่น BrowalliaUPC 51

52 ทำไมต้องประกาศตัวแปร เพื่อการทำงานที่ถูกต้องขอโปรแกรม เมนู Tools  Option…  Editor Require Variable Declaration จะได้ Option Explicit ใน View Code 52

53 การประกาศตัวแปรและค่าคงที่ Dim variable_name As Data_Type Const const_name = Value เช่น Dim data1 As Integer Const name = “Somjate” 53

54 กฎการตั้งชื่อตัวแปร ชื่อตัวแปรต้องขึ้นด้วยตัวอักษร ชื่อตัวแปรห้ามยาวเกิน 255 ตัวอักษร ใช้ตัวอักษร,ตัวเลขและ _ ผสมกัน เป็นชื่อได้ ห้ามซ้ำกับคำสงวน เช่น Dim ชื่อตัวแปรห้ามซ้ำกันถ้าอยู่ในขอบเขต เดียวกัน 54

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) 55

56 ชนิดของข้อมูล (ต่อ) Single  จำนวนจริงมีทศนิยม (4 Byte) ค่าลบ x10 38 ถึง x และ ค่าบวก x ถึง x10 38 Double  จำนวนจริงมีทศนิยม (8 Byte) ค่าลบ– x ถึง – x และ ค่าบวก x ถึง x

57 ชนิดของข้อมูล (ต่อ) Date  ข้อมูลวันที่และเวลา (8 Byte) String  ตัวอักษรหรือข้อความ Boolean  ค่าทางตรรกะ (2 Byte) Variant  ตัวแปรพิเศษ (22 Byte) 57

58 Operator ทางคณิตศาสตร์ นิพจน์ ความหมาย + บวก - ลบ * คูณ / หาร \ หารจำนวนเต็ม Mod หารเอาแต่เศษ ^ ยกกำลัง 58

59 ตัวอย่างงาน การทำงานกับ Operator ทางคณิตศาสตร์ 59

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 60

61 ขอบเขตของตัวแปร (Scope of variable) ตัวแปรแบบโลคอล (Local) ตัวแปรแบบโกลบอล (Global)  Private ใช้ได้ทุกโปรแกรมย่อยใน Form ที่ประกาศ  Public ใช้ได้ทุกโปรแกรมย่อยใน โปรแกรม 61

62 Operator ทางการเปรียบเทียบ นิพจน์ความหมาย =เท่ากับ >มากกว่า > =มากกว่าหรือเท่ากับ <น้อยกว่า < =น้อยกว่าหรือเท่ากับ ไม่เท่ากับ 62

63 ตัวอย่างงาน การทำงานกับ Operator ทางการเปรียบเทียบ 63

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 64

65 Operator ทางตรรกะ 65

66 ลำดับการคำนวณ ArithmeticComparisonLogical 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) ลง ใช้ในการปัดจุดทศนิยมลงให้เป็นเลขจำนวนเต็ม 67

68 ฟังก์ชันทางคณิตศาสตร์ Rnd[(Number)] Rnd ใช้ในการสุ่มค่าของข้อมูล เช่น สุ่มค่าจำนวนเต็ม 0-9 Label1.Caption = Int(Rnd * 9) (Randomize ทำให้การสุ่มเลขได้ไม่ซ้ำ) 68

69 ฟังก์ชันทางคณิตศาสตร์ Sqr(number) ใช้หาค่ารากที่สองของข้อมูล Abs(number) ใช้กำหนดให้ค่าของข้อมูลเป็นค่าบวก 69

70 การทำงานกับฟังก์ชันข้อความ InStr([Start],String1,String2,[Compare]) ใช้ค้นหาตัวอักษรใน String Replace(String1,Find, Replace) ใช้ค้นหาตัวอักษรใน String แล้วแทนที่ด้วย 70

71 การทำงานกับฟังก์ชันข้อความ UCase(String) ใช้เปลี่ยน String เป็นพิมพ์ใหญ่ทั้งหมด LCase(String) ใช้เปลี่ยน String เป็นพิมพ์เล็กทั้งหมด 71

72 ตัวอย่างงาน 72

73 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 ตัวอย่างงาน 73

74 การทำงานกับฟังก์ชันข้อความ Str(Numeric) ใช้แปลง Numeric เป็น String Val(String) ใช้แปลง String เป็น Numeric 74

75 การทำงานกับฟังก์ชันข้อความ IsNumeric(String) ตรวจสอบว่าเป็น Numeric หรือไม่ IsDate(String) ตรวจสอบว่าเป็น Date หรือไม่ 75

76 การทำงานกับฟังก์ชันข้อความ LTrim(String) ใช้ตัดช่องว่างทางด้านซ้ายของ String ออก RTrim(String) ใช้ตัดช่องว่างทาง ด้านขวาของ String ออก 76

77 การทำงานกับฟังก์ชันข้อความ Trim(String) ใช้ตัดช่องว่างทั้งด้านซ้าย และขวาของ String Format(value, "รูปแบบ") ใช้กำหนดรูปแบบของข้อมูล 77

78 รูปแบบของวันที่ (Date) "dd/mm/yy"  "Short Date" "dd/mmm/yyyy"  "Medium Date" "dd/mmmm/yyyy"  "Long Date" 78

79 การทำงานกับฟังก์ชันทางวันและเวลา Now จะให้ค่าวันที่และเวลา ณ ปัจจุบัน Time จะให้ค่าเวลา ณ ปัจจุบัน 79

80 รูปแบบของเวลา (Time) "HH:MM"  "Short Time" "HH:MM AMPM"  "Medium Time" "HH:MM:SS"  "Long Time" 80

81 ตัวอย่างงาน ตรวจสอบเวลาการทำงาน 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 ตัวอย่างงาน 82

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") End Sub ตัวอย่างงาน 83

84 If…Then…Else Statement If เงื่อนไข Then Statement… Else Statement… End If 84

85 Flow-Chart condition Statement ; TrueFalse 85

86 If…Then…Statement If เงื่อนไข Then Statement… 86

87 If…Then…Else Statement If เงื่อนไข Then Statement… Else Statement… End If If เงื่อนไข Then Statement… Elseif เงื่อนไข Then Statement… Elseif เงื่อนไข Then Statement… Else Statement… End if 87

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 88

89 Unload Statement Unload ObjectName เช่นPrivate Command1_Click() Unload Form1 'หรือ Unload Me End Sub 89

90 End Command End หยุดการรันโปรแกรม เช่นPrivate Command1_Click() End ' จบการทำงาน End Sub 90

91 ตัวอย่างงาน ตรวจสอบรหัสผ่าน 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) 91

92 ตัวอย่างงาน โปรแกรมตรวจสอบรหัสผ่าน 92

93 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(Tex t1.text) ตัวอย่างงาน 93

94 Select Case Statement Select Case ตัวแปร Case เงื่อนไข1 หรือ ค่าคงที่1 statement: Case เงื่อนไข2 หรือ ค่าคงที่2 statement: Case Else statement: End Select 94

95 Flow-Chart condition value1 … value2 value n else S ;Statement ; S ;Statement ; 95

96 ตัวอย่างงาน การตรวจสอบเกรด 96

97 ตัวอย่างงาน Private Sub CmdGrade_Click() Dim score As Integer Dim grade As String score = Val(txtmark.Text) 97

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 98

99 Check Box (properties) Name Alignment Caption Value  0 (Unchecked)  1 (Checked)  2 (Grayed) 99

100 ตัวอย่างงาน แสดงวันที่และเวลา โดยใช้ Check Box 100

101 Private Sub chkTime_Click() If chkTime.Value = 1 Then lbltime.Caption = Format(Now, "HH:MM:SS") Else lbltime.Caption = "" End If End Sub ตัวอย่างงาน 101

102 Private Sub Chkdate_Click() If chkDate.Value = 1 Then lblDate.Caption = Format(Now,"dd/mmmm/yyyy") Else lblDate.Caption = "" End If End Sub 102

103 Option Button (properties) Name Alignment Caption Value True (Select) False (Not Select) 103

104 ตัวอย่างงาน เลือกเพศโดยใช้ Option Button 104

105 ตัวอย่างงาน Private Sub Optmale_Click() lblgender.Caption = "Male" End Sub Private Sub Optfemale_Click() lblgender.Caption = "Female" End Sub 105

106 ตัวอย่างงาน การคำนวณพื้นที่ 106

107 Private Sub OptRectangle_Click() txtnumber1.Text = "" txtNumber2.Text = "" lblResult.Caption = "" txtNumber1.SetFocus lblName1.Caption = "กว้าง" lblName2.Caption = "ยาว" lblName3.Caption = "พื้นที่สี่เหลี่ยม" End Sub 107

108 Private Sub OptTriangle_Click() txtNumber1.Text = "" txtNumber2.Text = "" lblResult.Caption = "" txtNumber1.SetFocus lblName1.Caption = "ฐาน" lblName2.Caption = "สูง" lblName3.Caption = "พื้นที่สามเหลี่ยม" End Sub 108

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 109

110 Frame (properties) Name Caption 110

111 ตัวอย่างงาน ค้นหาตำแหน่งจากเพศและการศึกษา 111

112 การศึกษาชายหญิง ปริญญาตรีอาจารย์เลขา ปวส.ช่างประชาสัมพันธ์ ปวช.คนขับรถแม่บ้าน เงื่อนไข 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 113

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 114

115 Function MsgBox MsgBox Prompt [,Buttons] [,Title] Prompt  “ข้อความที่ต้องการแสดง” Buttons  ปุ่มทำงานและสัญลักษณ์ Title  “ข้อความที่แสดงที่หัว Box” 115

116 ตัวอย่าง Message Box Icon Title Buttons 116

117 ตัวอย่างของสัญลักษณ์ (Icon) vbCritical vbInformation vbExclamation vbQuestion 117

118 Function MsgBox ตัวแปร = MsgBox(Prompt [,Buttons] [,Title]) 118

119 ตัวอย่างการใช้ Msgbox 119

120 HScrollBar และ VScrollBar (properties) Name Min Max LargeChange SmallChange Scroll Box Value SmallChange LargeChange Min Max 120

121 Event Change เมื่อทำการเลื่อนที่ LargeChange หรือ SmallChange Scrollเมื่อทำการเลื่อนที่ Scroll Box 121

122 ตัวอย่างงาน การตรวจสอบ Properties ของ Scrollbar กำหนด Properties Min = 0 Max = 100 LargeChange = 10 SmallChange = 2 122

123 Sub HScroll1_Change() lblInfo.Caption = "Value = " & HScroll1.Value End Sub Sub HScroll1_Scroll() lblInfo.Caption = "Value = " & HScroll1.Value End Sub 123

124 การเรียกใช้ค่าสี Object_Name.Properties = Color_Name เช่น lblName.ForeColor = VbRed frmData.BackColor = VbGreen 124

125 ตัวอย่างงาน ปรับแต่งรูปแบบตัวอักษร 125

126 ตัวอย่างงาน ปรับแต่งรูปแบบตัวอักษร 126

127 127

128 Dim data As String Private Sub Form_Load() 'Width = 4125 Height = 1440 End Sub 128

129 Private Sub cmdFont_Click() data = txtName.Text lblName.Caption = data 'Width = 4125 Height = 4080 End Sub 129

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 130

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 131

132 Private Sub chkItalic_Click() If chkitalic.Value = 1 Then lblName.Font.Italic = True Else lblName.Font.Italic = False End If End Sub 132

133 Private Sub chkBold_Click() If chkbold.Value = 1 Then lblName.Font.Bold = True Else lblName.Font.Bold = False End If End Sub 133

134 Private Sub HScsize_Change() lblName.Font.Size = HScsize.Value End Sub Private Sub Command3_Click() 'Width = 4125 Height = 1440 End Sub 134

135 Private Sub optRed_Click() lblName.ForeColor = vbRed End Sub Private Sub optBlue_Click() lblName.ForeColor = vbBlue End Sub 135

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 136

137 การทำงานกับฟังก์ชันสี QBColor(n) โดย n มีค่าตั้งแต่ เช่น Label1.BackColor = QBColor(1) 137

138 การทำงานกับฟังก์ชันสี RGB(Red,Green,Blue) โดยค่าสีอยู่ในช่วง เช่น Label1.BackColor = RGB(0,0,255) Label1.ForeColor = RGB(255,0,255) 138

139 ตัวอย่างงาน การผสมสีโดยใช้ Scroll Bars 139

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 140

141 Private Sub HScRed_Change() lblShow.BackColor = RGB(HScRed.Value, _ HScGreen.Value, HScBlueValue) lblShow.ForeColor = RGB(255 - HScRed.Value, _ HScGreen.Value, HScBlue.Value) lblRed.Caption = "Red = " & HScRed.Value End Sub และเหตุการณ์ Scroll 141

142 Private Sub HScGreen_Change() lblShow.BackColor = RGB(HScRed.Value, _ HScGreen.Value, HScBlue.Value) lblShow.ForeColor = RGB(255 - HScRed.Value, _ HScGreenValue, 255 – HScBlue.Value) lblGreen.Caption = "Green = " & HScGreen.Value End Sub 142

143 Private Sub HScBlue_Change() lblShow.BackColor = RGB(HScRed.Value, _ HScGreen.Value, HScBlue.Value) lblShow.ForeColor = RGB(255 - HScRed.Value, _ HScGreen.Value, HScBlue.Value) lblBlue.Caption = “Blue = " & HScBlue.Value End Sub 143

144 LOOP 144

145 For…Next Statement For ตัวแปร = ค่าเริ่มต้น To ค่าสุดท้าย [ Step เพิ่ม/ลดค่าตัวแปร ] statement… Next ค่าตัวแปร 145

146 ตัวอย่าง For…Next Statement For I = 0 To 100 Step 2 statement… Next I 146

147 Flow-Chart for loop Statement ;.... end 147

148 ตัวอย่างงาน Private Sub Form_Click() Dim i As Integer For i = 1 To 20 Print i ; Next i End Sub แสดงตัวเลข 1 ถึง

149 Do…Loop Statement Do while (เงื่อนไข) Statement : Loop Do Until (เงื่อนไข) Statement : Loop 149

150 Do…Loop Statement (ต่อ) Do Statement : Loop while (เงื่อนไข) Do Statement : Loop Until (เงื่อนไข) 150

151 Flow-Chart (Do While) condition TrueFalse Statement ; end 151

152 Flow-Chart (Do…Until) Statement ;.... condition FalseTrue 152

153 ตัวอย่างงาน แสดงตัวเลข 1 ถึง 20 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 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 154

155 While…Wend Statement While (เงื่อนไข) statements : Wend 155

156 ตัวอย่างงาน แสดงตัวเลข 10 ลงไปหา 1 Private Sub Form_Click() Dim i As Integer i = 10 While i > 0 Print i i = i - 1 Wend End Sub 156

157 List Box (properties) Name Columns List ListIndex Text ListCount Sorted Style – Standard – Checkbox 156

158 ตัวอย่าง List Box 158

159 Method List1.AddItem “รายการ”, index List1.RemoveItem index List1.Clear 159

160 With …End With Statement With Object_Name.Properties = Value.Method End With 160

161 Goto Statement Goto label Statement… label : Statement… Sub Command1_Click() GoTo aa Label1.Caption = “VB" aa: Label1.Caption = "Siam” End Sub 161

162 On Error Goto… On Error Goto label Statement… label : Statement… 162

163 On Error Resume Next Statement… 163

164 คำสั่งการทำงานต่อเนื่อง Resume :ทำงานซ้ำบรรทัดที่เกิด Error ขึ้น Resume Next : ทำงานบรรทัดถัด จากบรรทัดที่เกิด Error ขึ้น 164

165 Error Object เป็น Object ที่จัดเก็บข้อผิดพลาดที่ เกิดขึ้นในโปรแกรมขณะ Run Time รูปแบบ Err.Properties 165

166 Properties Number Description 166

167 On…Goto & On…GoSub On expression GoSub destinationlist On expression GoTo destinationlist 167

168 ตัวอย่างงาน Private Sub Command1_Click() Dim n As Integer n = 1 On n GoTo a, b Exit Sub a: Print "1" Exit Sub b: Print "2" Exit Sub End Sub 168

169 ตัวอย่างงาน การย้ายรายการใน List Sorted = True 169

170 Private Sub Form_Load() lstPrg.AddItem "Widows" lstPrg.AddItem "Word" lstPrg.AddItem "Excel" lstPrg.AddItem "Access" lstPrg.AddItem "Power Point" End Sub หรือ 170

171 Private Sub Form_Load() With lstPrg.AddItem "Widows".AddItem "Word".AddItem "Excel".AddItem "Access".AddItem "Power Point" End With End Sub 171

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 End Sub 172

173 ตัวอย่างงาน การจัดการกับ List 173

174 Private Sub cmdADD_Click() If Trim(txtData.Text) <> "" Then lstInfo.AddItem txtData.Text End If txtData.Text = "" txtData.SetFocus End Sub 174

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 ' ลบข้อมูลทั้งหมด End Sub 175

176 ตัวอย่างงาน การย้ายข้อมูลใน List 2 List MultiSelect=Extended 176

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 177

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) n = List1.ListCount Else i = i + 1 End If Loop End Sub 178

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 179

180 Combo Box (properties) Name Style ◦ Dropdown Combo ◦ Simple Combo ◦ Dropdown List โดยทั่วไปใช้งานเหมือน List Box 180

181 ตัวอย่างงาน การเปลี่ยนสีฟอร์มโดยใช้ Combo 181

182 ตัวอย่างงาน สีเขียวอ่อน สีม่วง สีทอง 182

183 Private Sub Form_Load() cmbColor.AddItem "Blue" cmbColor.AddItem "Green" cmbColor.AddItem “Magenta" cmbColor.AddItem "Red" cmbColor.AddItem "Yellow" End Sub 183

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 184

185 Function InputBox ตัวแปร = InputBox(Prompt [,Title] [,Default]) Prompt : “ข้อความที่ต้องการแสดง” Title : “ข้อความที่แสดงที่หัวของ Box” Default : ค่าปกติที่ตั้งไว้ 185

186 ตัวอย่างของ InputBox Title Prompt 186

187 ตัวอย่างงาน ตอบคำถามจาก Question แล้วแสดงว่าตอบถูกกี่ข้อ 187

188 Dim n As Integer Dim Ans As String Private Sub Form_Load() n = 0 End Sub 188

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 189

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 190

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 191

192 DriveListBox (properties) Name Drive Event ส่วนใหญ่ใช้ Change เช่น EditPlus 192

193 DirListBox (properties) Name Path Event ส่วนใหญ่ใช้ Change 193

194 FileListBox (properties) Name Path Filename Pattern เช่น *.exe;*.xls Event ส่วนใหญ่ใช้ Click 194

195 ตัวอย่างงาน แสดงชื่อไฟล์ และ Path ของไฟล์ 195

196 Sub File1_Click() txtPath.Text = File1.Path txtFilename.Text = File1.FileName End Sub Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub Sub Dir1_Change() File1.Path = Dir1.Path End Sub 196

197 Timer (properties) Name Enabled Interval Event ใช้ Timer 197

198 การทำงานกับฟังก์ชันทางวันและเวลา Now จะให้ค่าวันที่และเวลา ณ ปัจจุบัน Time จะให้ค่าเวลา ณ ปัจจุบัน 198

199 ตัวอย่างงาน นาฬิกาดิจิตอลจาก Timer 198

200 Private Sub Timer1_Timer() lblTime.Caption = Time End Sub 200

201 ตัวแปร Static เป็นตัวแปรที่ไม่ถูกทำลายหลังจาก จบโปรแกรมย่อย (แต่ละ Event) รูปแบบ Static Name As Data_Type 201

202 ตัวอย่างงาน นับจำนวนการกดปุ่ม 202

203 Private Sub cmdCount_Click() Static n As Integer n = n + 1 lblShowNumber.Caption = "Count = " & n End Sub ' หรือประกาศตัวแปร n เป็นแบบ Private 203

204 ตัวอย่างงาน ตรวจสอบ Password Dim n As Integer Dim x As Integer 204

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") 205

206 If n < 3 And (x = 4) Then txtPassword.Text = "" txtPassword.SetFocus ElseIf x = 2 Then End Else MsgBox "ป้อนรหัสผิด 3 ครั้ง", 0, "Answer" End End If End Sub 206

207 คุณสมบัติของ Timer Enabled = False Interval = 510 ใช้ Timer กำหนดให้ Label เคลื่อนที่ ตัวอย่างงาน 207

208 ตัวอย่างงาน Private Sub cmdStart_Click() If cmdStart.Caption = "เริ่ม" Then Timer1.Enabled = True cmdStart.Caption = "หยุด" Else Timer1.Enabled = False cmdStart.Caption = "เริ่ม" End If End Sub 208

209 Private Sub Timer1_Timer() lblWalk.Left = lblWalk.Left End Sub 209

210 Private Sub Timer1_Timer() lblWalk.Left = lblWalk.Left If lblWalk.Left >= Me.Width Then lblWalk.Left = 0 End If End Sub 210

211 Private Sub cmdDecrease_Click() Timer1.Interval = Timer1.Interval - 50 End Sub 211

212 Private Sub cmdDecrease _Click() Timer1.Interval = Timer1.Interval - 50 If Timer1.Interval <= 10 Then cmdDecrease.Enabled = False End If End Sub 212

213 Private Sub cmdIncrease_Click() cmdDecrease.Enabled = True Timer1.Interval = Timer1.Interval + 50 End Sub 213

214 กำหนดให้ Label วิ่งรอบฟอร์ม Sub Form_Load() fac = "b" End Sub 214

215 กำหนดให้ 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

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 216

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 217

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 218

219 PictureBox (properties) Name AutoSize BorderStyle Picture ใช้ในด้านกราฟิก 219

220 ImageBox (properties) Name BorderStyle Picture Stretch ใช้แสดงรูปภาพบน Form 220

221 Method ของ Picture และ Image LoadPicture(“Directory\...\ชื่อไฟล์ ภาพ”) เช่น Image1.Picture =LoadPicture("c:\cat.jpg") 221

222 ตัวอย่างงาน เมื่อคลิกฟอร์ม ให้ทำการสลับภาพ 222

223 Sub Form_Click() Image2.Picture = Picture1.Picture Picture1.Picture = Image1.Picture Image1.Picture = Image2.Picture End Sub 223

224 ตัวอย่างงาน แสดงภาพจากไฟล์ที่เลือก 224

225 Sub Dir1_Change() File1.Path = Dir1.Path End Sub Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub 225

226 Sub File1_Click() txtPath.Text = File1.Path txtFile.Text = File1.FileName Image1.Picture = LoadPicture(File1.Path & _ "\" & File1.FileName) ' ตั้งค่าที่ Pattern ด้วย End Sub 226

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 227

229 คำสั่งในการวาดเส้นตรง line(x1,y1) – (x2,y2),Color เช่น Line (500, 200)-(2000, 1000), QBColor(11) 229

230 ตัวอย่างงาน สร้างตารางดังรูป 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 ตัวอย่างงาน 231

232 Shape (properties) Name BackStyle BackColor BorderColor BorderStyle BorderWidth FillColor FillStyle Shape 232

233 ตัวอย่างงาน Random Shape 233

234 Sub cmdShow_Click() Shape1.Shape = (Rnd * 5) Shape1.FillColor = QBColor(Rnd * 15) Shape1.FillStyle = (Rnd * 7) Shape1.BorderColor = QBColor(Rnd * 15) End Sub 234

235 คำสั่งในการวาดวงกลม Circle(x,y),radius,color เช่น Circle (1000, 1000),

236 ตัวอย่างงาน วงกลมซ้อน 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 237

238 การทำงานกับ Event ของ Mouse MouseDownเมื่อกดปุ่มของเมาส์ MouseUpเมื่อปล่อยปุ่มของเมาส์ MouseMoveเมื่อเลื่อนเมาส์ 238

239 การใช้ปุ่มบน Mouse พร้อมกับ Shift ตัวแปร Buttonตัวแปร Shift 1ปุ่มซ้าย1 กดปุ่ม Shift ร่วม 2ปุ่มขวา2 กดปุ่ม Ctrl ร่วม 4ปุ่มกลาง4 กดปุ่ม Alt ร่วม 239

240 พารามิเตอร์ของเหตุการณ์ที่เกี่ยวกับเมาส์ Private Sub ชื่อออปเจ็คต์_MouseDown( 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) Private Sub ชื่อออปเจ็คต์_MouseUp( Button As Integer, _ Shift As Integer, X As Single, Y As Integer) 240

241 ตัวอย่างงาน การกำหนดให้ Label เคลื่อนที่ตาม Mouse 241

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 242

243 ตัวอย่างงาน วาดเส้นโดยใช้ Mouse 243

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 244

245 Sub Form_MouseUp(Button As Integer, _ Shift As Integer, X As Single, Y As Single) d = False End Sub 245

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 246

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 กดเมาส์ซ้ายค้างวาดเส้น กดเมาส์ขวาค้างวาดวงกลม 247

248 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 กดเมาส์ซ้ายค้างวาดเส้น กดเมาส์ซ้ายค้างพร้อมปุ่ม Shift วาดวงกลม 248

249 การใช้ Common Dialog เมนู Project  Components… ◦ Microsoft Common Dialog Control

250 Dialog Open 250

251 Dialog Font 251

252 Dialog Color 252

253 ตัวอย่างงาน การเรียกใช้ Dialog 251

254 Common Dialog (properties) Name Action DialogTitle Filter FilterIndex Flags InitiDir CancelError 254

255 Common Dialog (properties) (ต่อ) FileName FontName FontSize FontBold FontItalic FontStrikethru FontUnderline Color 255

256 Common Dialog (Method) ShowOpen ShowSave ShowColor ShowPrinter ShowFont ShowHelp 256

257 ตัวอย่างการใช้ Filter. Filter= "All Files (*.*)|*.*".Filter= "All Files (*.*)|*.*|Text Files (*.txt)|*.txt" "All Pictures (*.bmp;*.gif;*.jpg)|*.bmp;*.gif;*.jpg" FilterIndex = 2 257

258 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 การเรียกใช้ Dialog Open 258

260 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 การเรียกใช้ Dialog Font 260

261 Private Sub cmdExit_Click() End End Sub 261

262 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 การเรียกใช้ Dialog Save 262

264 Private Sub cmdShowHelp_Click() dlg1.HelpFile = _ "c:\windows\help\winhlp32.hlp" dlg1.HelpCommand =cdlHelpContents dlg1.ShowHelp End Sub การเรียกใช้ Dialog Help 264

265 MDI Form สร้าง MDI Form Project  Add MDI Form เลือก MDI Form Open Multiple Document Interface 265

266 ตัวอย่างงาน การใช้งาน MDI Form MDI Form MDI Child Form 266

267 การกำหนดฟอร์มลูกของ MDI Form ให้กำหนด Properties  MDIChild ของฟอร์มลูกเป็น True 267

268 การสร้างเมนู (Menu) Tools  Menu Editor...  Caption : ข้อความที่จะแสดงเป็นเมนู  Name : กำหนดชื่อเมนู  คลิกปุ่ม  : เพื่อกำหนดเมนูย่อย ** สร้างได้ 6 ระดับ 268

269 ตัวอย่างงาน สร้างเมนูดังรูป 269

270 CaptionName &Filemnufile Openform1mnuform1 Openform2mnuform2 - mnuline Exitmnuexit เมนูไฟล์ 270

271 เมนู Font CaptionName &Fontmnufont 10mnu10 12mnu12 15mnu15 20mnu20 Colormnucolor Redmnured Greenmnugreen Bluemnublue 271

272 การเขียนคำสั่งใน Menu Sub mnuform1_Click() Form1.Show End Sub Sub mnuform2_Click() Form2.Show End Sub Sub mnuexit_Click() End End Sub 272

273 สร้าง MDI Form และเมนู ดัง รูป 273

274 กำหนดให้ คุณสมบัติของ Form1 และ Form2 274

275 Sub mnuform1_Click() Form1.Show End Sub Sub mnuform2_Click() Form2.Show End Sub Sub mnuform3_Click() Form3.Show End Sub Sub mnuexit_Click() End End Sub ดูความแตกต่างระหว่างฟอร์ม 2 และ 3 275

276 Popup Menu Tools  Menu Editor... กำหนดรายการเมนูเหมือนการสร้าง เมนู โดยรายการหลักให้ ยกเลิก Visible ออก 276

277 ตัวอย่างงาน สร้าง Popmenu CaptionName popupmnupopup Cutmnucut Copymnucopy Pastemnupaste Visible=False 277

278 การเรียกใช้งาน Popup Menu Popupmenu PopupMenu_Name เช่น PopupMenu mnupopup 278

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 279

280 โปรแกรมย่อย (Procedure) Sub (Sub Program) Function 280

281 Sub Program Sub ชื่อโปรแกรมย่อย (parameter) Statement : End Sub 281

282 ขอบเขตของ Sub Program Private Sub ชื่อโปรแกรมย่อย (parameter) เป็นโปรแกรมที่ใช้ได้ใน Form นั้นๆ Public Sub ชื่อโปรแกรมย่อย (parameter) เป็นโปรแกรมที่ใช้ได้ในทุกๆ Form Sub ชื่อโปรแกรมย่อย (parameter) เหมือนกับ Public Sub 282

283 การเรียกใช้ Sub Program Call ชื่อโปรแกรมย่อย(ค่าที่ส่ง) ชื่อโปรแกรมย่อย(ค่าที่ส่ง) หรือ 283

284 ตัวอย่างงาน Sub Program แบบไม่มี Parameter 284

285 Sub Color() lblShow.BackColor = RGB(HScroll1.Value, _ HScroll2.Value, HScroll3.Value) lblShow.ForeColor = RGB(255 - HScroll1.Value, _ HScroll2.Value, HScroll3.Value) End Sub 285

286 Private Sub HScRed_Change() Call Color lblRed.Caption = "Red = " & HScRed.Value End Sub Private Sub HScGreen_Change() Call Color lblGreen.Caption = "Green = " & HScGreen.Value End Sub 286

287 Private Sub HScBlue_Change() Call Color lblBlue.Caption = “BLUE = " & HScBlue.Value End Sub 287

288 ตัวอย่างงาน Sub Program แบบมี Parameter 288

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)) Next i End Sub 289

290 Private Sub cmdTable_Click() Me.Cls Call table(Val(txtRow.Text), Val(txtCol.Text)) txtRow.Text = "" txtCol.Text = "" txtRow.SetFocus End Sub 290

291 Function Function ชื่อ function (parameter) As datatype Statement : End Function 291

292 การเรียกใช้ Function ตัวแปร หรือ Object = ชื่อ Function(ส่งค่า Parameter) 292

293 ตัวอย่างงาน การหาค่า Factorial 293

294 Function Fac(n As Integer) As Long If n = 1 Then Fac = 1 Else Fac = n * Fac(n - 1) End If End Function 294

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 295

296 การประกาศตัวแปร Array Dim ชื่อตัวแปร(UpperBound) As Type เช่น Dim Cost(5) As Integer Cost(0) = 20 Cost(5) = val(Text1.Text) 296

297 การประกาศตัวแปร Array Dim ชื่อตัวแปร(LBound To UBound) As Type เช่น Dim Score(1 To 4) As Integer Dim Name(97 To 100) As String 297

298 Object แบบ Array ถ้าต้องการใช้ Object แบบ Array ให้ทำการคัดลอก Object 298

299 ตัวอย่างงาน หาค่าเฉลี่ยโดยใช้ Array คัดลอก Text1 อีก 2 ตัว 299

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 300

301 การทำงานกับฐานข้อมูล 299

302 Data Control (properties) Name Caption Connect DatabaseName RecordSource 302

303 Method ของ Record Set AddNew Update CancelUpdate Delete Refresh 303

304 Method ของ Record Set MoveFirst MoveLast MoveNext MovePrevious FindFirst FindLast FindNext FindPrevious 304

305 การกำหนดให้ Object อ้างข้อมูลในฐานข้อมูลได้ กำหนดคุณสมบัติ  DataSource  DataField 305

306 การเขียนคำสั่งโปรแกรมกับ Data Control MoveFirstย้ายไปยังเรคคอร์ดแรก MoveLastย้ายไปยังเรคคอร์ดสุดท้าย MoveNextย้ายไปยังเรคคอร์ดถัดไป MovePreviousย้ายไปยังเรคคอร์ดก่อนหน้า Moveย้ายไปยังเรคคอร์ดที่ระบุ การย้ายไปยังเรคคอร์ดต่างๆ ใน ReccordSet 306

307 การเขียนคำสั่งโปรแกรมกับ Data Control FindFirst ค้นหาเรคคอร์ดแรกที่ตรงกับเงื่อนไข FindLast ค้นหาเรคคอร์ดสุดท้ายที่ตรงกับเงื่อนไข FindNext ค้นหาเรคคอร์ดถัดไปที่ตรงกับเงื่อนไข FindPrevious ค้นหาเรคคอร์ดก่อนหน้าที่ตรงกับเงื่อนไข การค้นหาข้อมูลใน ReccordSet 307

308 ตัวอย่างงาน แสดงข้อมูลจากฐานข้อมูลที่สร้างขึ้น Data1 กำหนด DatabaseName และ RecordSource Text กำหนด DataSource และ DataField 308

309 Private Sub cmdAdd_Click() ' ปุ่ม Add Data1.Recordset.AddNew txtId.SetFocus cmdOK.Visible = True cmdADD.Visible = False End Sub 309

310 Private Sub cmdOK_Click() 'ปุ่ม OK Data1.Recordset.Update cmdADD.Visible = True cmdOK.Visible = False End Sub เมื่อทำการรันให้ ปุ่ม OK ซ้อนปุ่ม Add 310

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 311

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 312

313 313

314 ' ให้ใส่ตำแหน่งที่มีอยู่ใน Database Private Sub Form_Load() cmbPosition.AddItem "Manager" cmbPosition.AddItem "Saleman" cmbPosition.AddItem “Reception" End Sub 314

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 315

316 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 If End Sub ต่อปุ่ม Find 316

317 Private Sub cmdFindNext_Click() 'ปุ่ม FindNext Data1.Recordset.FindNext t If Data1.Recordset.NoMatch Then MsgBox "End of Data", 32 End If End Sub 317

318 ตัวอย่างงาน ป้อน user name และ password เพื่อเข้าไปใช้ Database ถ้าป้อน admin และ password = dusit สามารถใช้ Database ได้ครบ ถ้าป้อน user และ password = sitd สามารถใช้ Database บางส่วน 318

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.Visible = True Form35.Command1.Visible = False Form35.Command3.Visible = False Form36.Visible = False 319

321 จบบทเรียน 319


ดาวน์โหลด ppt Visual Basic 6.0 1. ความเป็นมาของ Visual Basic พัฒนามาจากภาษา QBASIC เป็นภาษาที่เหมาะกับการเริ่มต้น Visual Basic V. 1.0 เมื่อปี 1991 Visual Basic V. 6.0.

งานนำเสนอที่คล้ายกัน


Ads by Google