visual basic 6 0 l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Visual Basic 6.0 PowerPoint Presentation
Download Presentation
Visual Basic 6.0

Loading in 2 Seconds...

play fullscreen
1 / 321

Visual Basic 6.0 - PowerPoint PPT Presentation


  • 475 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Visual Basic 6.0' - niveditha


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
visual basic
ความเป็นมาของ Visual Basic

พัฒนามาจากภาษา QBASIC

เป็นภาษาที่เหมาะกับการเริ่มต้น

Visual Basic V. 1.0 เมื่อปี 1991

Visual Basic V. 6.0 เมื่อปี 1998

Visual Studio .NET เมื่อปี 2002

visual basic3
ทำไมต้องเริ่มที่ Visual Basic

1. ง่ายต่อการเรียนรู้

2. ความนิยมของตัวภาษา

3. เป็นซอฟต์แวร์ของ Microsoft

4. การพัฒนาอย่างต่อเนื่อง

visual basic4
ทำไมต้องเริ่มที่ Visual Basic

5. Visual Basic for Application (VBA) ในชุด Microsoft Office

6. VB Script Edition ใช้ในการเขียนสร้าง Home Page

7. ASP (Active Server Page)

event driven
การเขียนโปรแกรมแบบ Event-driven

การทำงานของโปรแกรมจะขึ้นอยู่กับการกระทำกับส่วนประกอบต่างๆ ของหน้าต่าง (Window) ของโปรแกรม เช่น ปุ่มต่างๆ, เลื่อนเมาส์

การทำงานจะเป็นไปตามเหตุการณ์(Event) ที่เกิดขึ้น

procedural
การเขียนโปรแกรมแบบ Procedural

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

slide7
ขั้นตอนการออกแบบโปรแกรมขั้นตอนการออกแบบโปรแกรม

1. ศึกษาความต้องการของผู้ใช้

2. ออกแบบหน้าจอของโปรแกรม

และขั้นตอนการทำงานของ

โปรแกรม

3. เริ่มเขียนและพัฒนาโปรแกรม

4. รวบรวมและทดสอบโปรแกรม

5. ส่งมอบโปรแกรมสู่ผู้ใช้

visual basic8
รุ่นต่างๆ ของ Visual Basic

Learning Edition

Professional Edition

Enterprise Edition

slide9
การติดตั้งโปรแกรม
  • ระบบปฏิบัติการ Windows 98-XP
  • CPU Pentium ขึ้นไป
  • หน่วยความจำ (RAM) 32 MB ขึ้นไป
  • CD-ROM, Mouse, Keyboard
  • แผ่นโปรแกรม Microsoft Visual Studio 6.0
  • แผ่นโปรแกรม MSDN เป็นส่วนของ Help
visual basic10
คุณสมบัติของ Visual Basic
  • คอมไพเลอร์และการเขียนโปรแกรมบน Microsoft Windows
  • หลักการของ OOP

(Object Oriented Programming)

slide12

Form

Textbox

Checkbox

Option

Button

slide13
การเรียกใช้งาน

ปุ่ม Start>> Programs

>> Microsoft Visual Studio 6.0

>> Microsoft Visual Basic 6.0

visual basic14
ส่วนประกอบของ Visual Basic
  • แถบ Title Bar
  • แถบ Menu Bar
  • แถบ Tool Bar
  • หน้าต่าง Form Windows
    • View Object
visual basic15
ส่วนประกอบของ Visual Basic
  • หน้าต่าง Project Explorer
    • View  Project Explorer <Ctrl+R>
  • หน้าต่าง Properties
    • View  Properties Window <F4>
visual basic16
ส่วนประกอบของ Visual Basic
  • หน้าต่าง Form Layout
    • View  Form Layout Window
  • แถบเครื่องมือ Toolbox
    • View  Toolbox
application18
การสร้าง Application ใหม่

File  New Project

เลือก Standard EXE

คลิกปุ่ม OK

application19
การบันทึก Application

การบันทึกจะบันทึกแยกระหว่าง Form กับ Project

  • File  Save Form หรือ Project
  • ตั้งชื่อฟอร์ม หรือ ชื่อ project
  • คลิกปุ่ม Save
slide20
การเพิ่ม Form ใหม่

Project  Add Form

หรือ

คลิก Toolbar ในการเพิ่ม Form

slide21
การเพิ่ม Form ที่มีอยู่แล้ว

Project  Add File

เลือกฟอร์มที่ต้องการ

คลิกปุ่ม Open

slide22
ยกเลิก Form ออก

เลือกฟอร์ม

Project  Remove ชื่อForm

run application
การ Run Application
  • Run  Start

หรือ

  • กดคีย์ F5หรือใช้ Toolbar
stop application
การ Stop Application
  • Run  End

หรือ

  • ใช้ Toolbar
slide25
การกำหนดฟอร์มที่รัน

เมนู Project  Project Properties…

แท็บ General

กำหนดที่ Startup Object

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

เป็นตัวบอกว่าคำสั่งที่ตอบสนองนั้นเริ่มต้นและจบลงที่ใด

  • การเขียน Code คำสั่งเพื่อตอบสนองต่อ Event
    • เปิดหน้าต่าง Code Editor
      • ด้านซ้ายสำหรับเลือกชื่อ Object
      • ด่านขวาสำหรับกำหนด Event
    • ใส่คำสั่งลงไประหว่างข้อความPrivate Sub<ชื่อคอนโทรล>_<ชื่ออีเว็นต์> กับEnd Sub
properties
การกำหนด Properties โดยการเขียนโค้ด

เช่น

Form1.Caption = “โปรแกรมการคำนวณภาษี"

Form1.FontSize = 20

Object_Name.Properties_Name = ค่าของproperties

properties control
Properties พื้นฐานของ Control

30

Name

Caption

ForeColor

BackColor

Height, Width

Left ,Top

TabIndex

Enabled

Visible

FontBold,FontItalic

FontName,FontSize

FontUnderline

MousePointer

properties form
Properties ของ Form

Name

BackColor

ForeColor

Caption

Enabled

Font

Icon

MinButton

MaxButton

Height

Width

AutoRedraw

32

properties form33
Properties ของ Form

33

MousePointer

MouseIcon

( MousePointer=Custom )

Picture

Visible

CurrentX

CurrentY

method form
Method ของ Form

Form_Name.Hide

Form_Name.Show

Form_Name.Cls

Print "ข้อความ" & ตัวแปร

method
การใช้ Method โดยการเขียนโค้ด

เช่น

Form1.Print "Siam Computer"

Me.Show

Object_Name.Method_Name [พารามิเตอร์ของ Method]

event form
Event ของ Form

Activate เมื่อฟอร์ม Activate

Click เมื่อคลิกที่ฟอร์ม

DblClick เมื่อดับเบิ้ลคลิกที่ฟอร์ม

Load เมื่อเปิดฟอร์มขึ้นมาทำงาน

UnLoad เมื่อปิดฟอร์ม

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

Sub Form_Activate( )

Form1.FontSize=20

Print “Test Visual Basic”

Print “Siam Computer”

End Sub

slide38

เพิ่ม เซมิโคลอน ( ; )

ตัวอย่างงาน

Sub Form_Activate( )

Form1.Font.Size=20

Print “Test Visual Basic” ;

Print “Siam Computer”

CurrentX = 1500

CurrentY = 1000

Print “New Position”

End Sub ( )

slide39
ตัวอย่างที่ 2

คอนโทรล คุณสมบัติ ค่าที่กำหนด

Form Name Form1

AutoRedraw True

CommandButton Name Command1

Caption Clear

slide40
ตัวอย่างที่ 2

Sub Form_Activate() Form1.Print “ Form_Activate ”End SubSub Form_Click() Form1.Print “ Form_Click ”End SubSub Command1_Click() Form1.ClsEnd Sub

Sub Form_DblClick() Form1.Print “Double_Click ”End SubSub Form_Resize() Form1.Print “ Form_Resize”End Sub

label properties
Label (properties)

42

Name

Alignment

AutoSize

BorderStyle

BackStyle

Caption

Left

Top

text box properties
Text Box (properties)
  • ScrollBars
  • TabIndex เริ่มที่ 0
  • TabStop
  • ToolTipText

Name

Text

MaxLenght

PasswordChar

Multiline

method44
Method

เช่น

Text1.Setfocus

Command1. Setfocus

Object_Name.SetFocus

กำหนดให้ cursor ไป focus ที่ Object

properties45
Properties..

SelStart กำหนดตำแหน่งเริ่มเลือก

SelLength กำหนดความยาวที่ต้องการเลือกข้อความ

event
Event

Change เมื่อมีการเปลี่ยนแปลงที่ Text

GotFocus เมื่อ Text ได้รับ Focus

LostFocus เมื่อ Text สูญเสีย Focus

command button properties
Command Button (properties)

Name

Caption

Default

Picture

Style

slide48

ตัวอย่างงาน

หาผลคูณระหว่าง 2 Text Box

slide49

Source Code

Sub cmdMultiply_Click()

a = txtnum1.Text

b = txtnum2.Text

lblResult.Caption = a & " * " & b & " = " & a * b

End Sub

operator
Operator ในการเชื่อมต่อข้อมูล

' ใช้ในการเปลี่ยนประโยคคำสั่งเป็นComment

& และ + ใช้ในการเชื่อมข้อมูล

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

เช่น BrowalliaUPC

slide52
ทำไมต้องประกาศตัวแปร
  • เพื่อการทำงานที่ถูกต้องขอโปรแกรม
  • เมนู Tools Option… Editor
    • Require Variable Declaration

จะได้ Option Explicit ใน View Code

slide53
การประกาศตัวแปรและค่าคงที่การประกาศตัวแปรและค่าคงที่

Const const_name = Value

เช่น

Dim data1 As Integer

Const name = “Somjate”

Dim variable_name As Data_Type

slide54
กฎการตั้งชื่อตัวแปร

ชื่อตัวแปรต้องขึ้นด้วยตัวอักษร

ชื่อตัวแปรห้ามยาวเกิน 255 ตัวอักษร

ใช้ตัวอักษร,ตัวเลขและ _ ผสมกันเป็นชื่อได้

ห้ามซ้ำกับคำสงวน เช่น Dim

ชื่อตัวแปรห้ามซ้ำกันถ้าอยู่ในขอบเขตเดียวกัน

slide55
ชนิดของข้อมูล

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,477.5808 ถึง 922,337,203,685,477.5807 (8 Byte)

slide56
ชนิดของข้อมูล (ต่อ)
  • Single จำนวนจริงมีทศนิยม (4 Byte)

ค่าลบ -3.402823x1038 ถึง -1.401298x10-45และ

ค่าบวก 1.401298x10-45 ถึง 3.402823x1038

  • Double  จำนวนจริงมีทศนิยม (8 Byte)

ค่าลบ – 1.79769313486232x10308ถึง

– 4.94065645841247x10-324และ

ค่าบวก4.94065645841247 x10-324ถึง 1.79769313486232x10308

slide57
ชนิดของข้อมูล (ต่อ)

Date  ข้อมูลวันที่และเวลา (8 Byte)

String  ตัวอักษรหรือข้อความ

Boolean  ค่าทางตรรกะ (2 Byte)

Variant  ตัวแปรพิเศษ (22 Byte)

operator58
Operator ทางคณิตศาสตร์

นิพจน์ความหมาย

+ บวก

- ลบ

* คูณ

/ หาร

\ หารจำนวนเต็ม

Modหารเอาแต่เศษ

^ ยกกำลัง

slide59

ตัวอย่างงาน

การทำงานกับ Operator ทางคณิตศาสตร์

slide60

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

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

นิพจน์ความหมาย

= เท่ากับ

> มากกว่า

> = มากกว่าหรือเท่ากับ

< น้อยกว่า

< = น้อยกว่าหรือเท่ากับ

< > ไม่เท่ากับ

slide63

ตัวอย่างงาน

การทำงานกับ Operator ทางการเปรียบเทียบ

slide64

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

slide67
ฟังก์ชันทางคณิตศาสตร์ฟังก์ชันทางคณิตศาสตร์

Int(number)

ใช้ในการปัดจุดทศนิยมลงให้เป็นเลขจำนวนเต็ม

Round(number)

ใช้ในการปัดจุดทศนิยมให้เป็นเลขจำนวนเต็ม

slide68
ฟังก์ชันทางคณิตศาสตร์ฟังก์ชันทางคณิตศาสตร์

เช่นสุ่มค่าจำนวนเต็ม 0-9

Label1.Caption = Int(Rnd * 9)

(Randomize ทำให้การสุ่มเลขได้ไม่ซ้ำ)

Rnd[(Number)]

Rnd ใช้ในการสุ่มค่าของข้อมูล

slide69
ฟังก์ชันทางคณิตศาสตร์ฟังก์ชันทางคณิตศาสตร์

Abs(number)

ใช้กำหนดให้ค่าของข้อมูลเป็นค่าบวก

Sqr(number)

ใช้หาค่ารากที่สองของข้อมูล

slide70
การทำงานกับฟังก์ชันข้อความการทำงานกับฟังก์ชันข้อความ

Replace(String1,Find, Replace)

ใช้ค้นหาตัวอักษรใน String แล้วแทนที่ด้วย

InStr([Start],String1,String2,[Compare])

ใช้ค้นหาตัวอักษรใน String

slide71
การทำงานกับฟังก์ชันข้อความการทำงานกับฟังก์ชันข้อความ

LCase(String)

ใช้เปลี่ยน String เป็นพิมพ์เล็กทั้งหมด

UCase(String)

ใช้เปลี่ยน String เป็นพิมพ์ใหญ่ทั้งหมด

slide73

ตัวอย่างงาน

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

slide74
การทำงานกับฟังก์ชันข้อความการทำงานกับฟังก์ชันข้อความ

Val(String)

ใช้แปลง String เป็น Numeric

Str(Numeric)

ใช้แปลง Numeric เป็น String

slide75
การทำงานกับฟังก์ชันข้อความการทำงานกับฟังก์ชันข้อความ

IsDate(String)

ตรวจสอบว่าเป็น Date หรือไม่

IsNumeric(String)

ตรวจสอบว่าเป็น Numeric หรือไม่

slide76
การทำงานกับฟังก์ชันข้อความการทำงานกับฟังก์ชันข้อความ

RTrim(String) ใช้ตัดช่องว่างทาง

ด้านขวาของ String ออก

LTrim(String)

ใช้ตัดช่องว่างทางด้านซ้ายของ String ออก

slide77
การทำงานกับฟังก์ชันข้อความการทำงานกับฟังก์ชันข้อความ

Format(value , "รูปแบบ")

ใช้กำหนดรูปแบบของข้อมูล

Trim(String) ใช้ตัดช่องว่างทั้งด้านซ้ายและขวาของ String

slide78
รูปแบบของวันที่(Date)

"dd/mm/yy" "Short Date"

"dd/mmm/yyyy" "Medium Date"

"dd/mmmm/yyyy" "Long Date"

slide79
การทำงานกับฟังก์ชันทางวันและเวลาการทำงานกับฟังก์ชันทางวันและเวลา

Time

จะให้ค่าเวลา ณ ปัจจุบัน

Now

จะให้ค่าวันที่และเวลา ณ ปัจจุบัน

slide80
รูปแบบของเวลา(Time)

"HH:MM"  "Short Time"

"HH:MM AMPM"  "Medium Time"

"HH:MM:SS"  "Long Time"

slide81

ตัวอย่างงาน

ตรวจสอบเวลาการทำงาน

slide82

ตัวอย่างงาน

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

slide83
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

ตัวอย่างงาน

if then else statement
If…Then…Else Statement

If เงื่อนไขThen

Statement…

Else

Statement…

End If

slide85

False

True

condition

Statement ;

Statement ;

Flow-Chart

if then statement
If…Then…Statement

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

if then else statement87
If…Then…Else Statement

If เงื่อนไข Then

Statement…

Elseif เงื่อนไขThen

Statement…

Elseif เงื่อนไขThen

Statement…

Else

Statement…

End if

If เงื่อนไขThen

Statement…

Else

Statement…

End If

elseif
ตัวอย่างการใช้ 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

unload statement
Unload Statement

เช่น Private Command1_Click()

Unload Form1 'หรือ

Unload Me

End Sub

Unload ObjectName

end command
End Command

เช่น Private Command1_Click()

End ' จบการทำงาน

End Sub

End

หยุดการรันโปรแกรม

slide91

ตัวอย่างงาน

PrivateSub cmdOK_Click()

If txtPass.Text = "basic" Then

frmCalculate.Show

Unload Me

Else

txtPass.Text = ""

txtPass.SetFocus

End If

End Sub

ตรวจสอบรหัสผ่าน

Lcase(Text1.text)

slide92

ตัวอย่างงาน

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

slide93

ตัวอย่างงาน

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

select case statement
Select Case Statement

Select Case ตัวแปร

Case เงื่อนไข1 หรือ ค่าคงที่1

statement:

Case เงื่อนไข2 หรือ ค่าคงที่2

statement:

Case Else

statement:

End Select

flow chart

condition

value1

value2

else

value n

S ;

Statement ;

Statement ;

S ;

Flow-Chart
slide96

ตัวอย่างงาน

การตรวจสอบเกรด

slide97

ตัวอย่างงาน

Private Sub CmdGrade_Click()

Dim score As Integer

Dim grade As String

score = Val(txtmark.Text)

slide98

ตัวอย่างงาน

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

check box properties
Check Box (properties)
  • Value
    • 0 (Unchecked)
    • 1 (Checked)
    • 2 (Grayed)

Name

Alignment

Caption

slide100

ตัวอย่างงาน

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

slide101

ตัวอย่างงาน

Private Sub chkTime_Click()

If chkTime.Value = 1 Then

lbltime.Caption = Format(Now, "HH:MM:SS")

Else

lbltime.Caption = ""

End If

End Sub

slide102

Private Sub Chkdate_Click()

If chkDate.Value = 1 Then

lblDate.Caption = Format(Now,"dd/mmmm/yyyy")

Else

lblDate.Caption = ""

End If

End Sub

option button properties
Option Button (properties)
  • Value
    • True (Select)
    • False (Not Select)

Name

Alignment

Caption

slide104

ตัวอย่างงาน

เลือกเพศโดยใช้ Option Button

slide105

ตัวอย่างงาน

Private Sub Optmale_Click()

lblgender.Caption = "Male"

End Sub

Private Sub Optfemale_Click()

lblgender.Caption = "Female"

End Sub

slide106

ตัวอย่างงาน

การคำนวณพื้นที่

slide107

Private Sub OptRectangle_Click()

txtnumber1.Text = ""

txtNumber2.Text = ""

lblResult.Caption = ""

txtNumber1.SetFocus

lblName1.Caption = "กว้าง"

lblName2.Caption = "ยาว"

lblName3.Caption = "พื้นที่สี่เหลี่ยม"

End Sub

slide108

Private Sub OptTriangle_Click()

txtNumber1.Text = ""

txtNumber2.Text = ""

lblResult.Caption = ""

txtNumber1.SetFocus

lblName1.Caption = "ฐาน"

lblName2.Caption = "สูง"

lblName3.Caption = "พื้นที่สามเหลี่ยม"

End Sub

slide109

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

slide111

ตัวอย่างงาน

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

slide112

เงื่อนไข

การศึกษาชายหญิง

ปริญญาตรี อาจารย์ เลขา

ปวส. ช่าง ประชาสัมพันธ์

ปวช. คนขับรถ แม่บ้าน

slide113

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

slide114

If Optedu1.Value = True Then

lblCareer.Caption = "เลขา"

ElseIf Optedu2.Value = True Then

lblCareer.Caption = "ประชาสัมพันธ์"

ElseIf Optedu3.Value = True Then

lblCareer.Caption = "แม่บ้าน"

End If

End If

End Sub

function msgbox
Function MsgBox

MsgBoxPrompt [,Buttons] [,Title]

  • Prompt “ข้อความที่ต้องการแสดง”
  • Buttons ปุ่มทำงานและสัญลักษณ์
  • Title  “ข้อความที่แสดงที่หัว Box”
slide117
ตัวอย่างของสัญลักษณ์ (Icon)

117

vbCritical

vbInformation

vbExclamation

vbQuestion

function msgbox118
Function MsgBox

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

hscrollbar vscrollbar properties

Scroll Box

LargeChange

SmallChange

HScrollBarและ VScrollBar (properties)

Min

  • Max
  • Min
  • LargeChange
  • SmallChange
  • Value

Max

Name

event121
Event

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

Scroll เมื่อทำการเลื่อนที่ Scroll Box

slide122

กำหนด Properties

Min = 0

Max = 100

LargeChange = 10

SmallChange = 2

ตัวอย่างงาน

การตรวจสอบ Properties ของ Scrollbar

slide123

Sub HScroll1_Change()

lblInfo.Caption = "Value = " & HScroll1.Value

End Sub

Sub HScroll1_Scroll()

lblInfo.Caption = "Value = " & HScroll1.Value

End Sub

slide124
การเรียกใช้ค่าสี

เช่น

lblName.ForeColor = VbRed

frmData.BackColor = VbGreen

Object_Name.Properties = Color_Name

slide125

ตัวอย่างงาน

ปรับแต่งรูปแบบตัวอักษร

slide126

ตัวอย่างงาน

ปรับแต่งรูปแบบตัวอักษร

slide128

Dim data As String

Private Sub Form_Load()

'Width = 4125

Height = 1440

End Sub

slide129

Private Sub cmdFont_Click()

data = txtName.Text

lblName.Caption = data

'Width = 4125

Height = 4080

End Sub

slide130

Private Sub chklowercase_Click()

If chklowercase.Value = 1 Then

chkuppercase.Value = 0

lblName.Caption = LCase(data)

Else

lblName.Caption = data

End If

End Sub

slide131

Private Sub chkuppercase_Click()

If chkuppercase.Value = 1 Then

chklowercase.Value = 0

lblName.Caption = UCase(data)

Else

lblName.Caption = data

End If

End Sub

slide132

Private Sub chkItalic_Click()

If chkitalic.Value = 1 Then

lblName.Font.Italic = True

Else

lblName.Font.Italic = False

End If

End Sub

slide133

Private Sub chkBold_Click()

If chkbold.Value = 1 Then

lblName.Font.Bold = True

Else

lblName.Font.Bold = False

End If

End Sub

slide134

Private Sub HScsize_Change()

lblName.Font.Size = HScsize.Value

End Sub

Private Sub Command3_Click()

'Width = 4125

Height = 1440

End Sub

slide135

Private Sub optRed_Click()

lblName.ForeColor = vbRed

End Sub

Private Sub optBlue_Click()

lblName.ForeColor = vbBlue

End Sub

slide136

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

slide137
การทำงานกับฟังก์ชันสีการทำงานกับฟังก์ชันสี

เช่น

Label1.BackColor = QBColor(1)

QBColor(n)

โดย n มีค่าตั้งแต่ 0 - 15

slide138
การทำงานกับฟังก์ชันสีการทำงานกับฟังก์ชันสี

เช่น

Label1.BackColor = RGB(0,0,255)

Label1.ForeColor = RGB(255,0,255)

RGB(Red,Green,Blue)

โดยค่าสีอยู่ในช่วง 0 - 255

slide139

ตัวอย่างงาน

การผสมสีโดยใช้ Scroll Bars

slide140

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

slide141

และเหตุการณ์ Scroll

Private Sub HScRed_Change()

lblShow.BackColor = RGB(HScRed.Value, _

HScGreen.Value, HScBlueValue)

lblShow.ForeColor = RGB(255 - HScRed.Value, _

255 - HScGreen.Value, 255 - HScBlue.Value)

lblRed.Caption = "Red = " & HScRed.Value

End Sub

slide142

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

slide143

Private Sub HScBlue_Change()

lblShow.BackColor = RGB(HScRed.Value, _

HScGreen.Value, HScBlue.Value)

lblShow.ForeColor = RGB(255 - HScRed.Value, _

255 - HScGreen.Value, 255 - HScBlue.Value)

lblBlue.Caption = “Blue = " & HScBlue.Value

End Sub

for next statement
For…Next Statement

For ตัวแปร = ค่าเริ่มต้น To ค่าสุดท้าย

[ Step เพิ่ม/ลดค่าตัวแปร]

statement…

statement…

Next ค่าตัวแปร

for next statement146
ตัวอย่าง For…Next Statement

For I = 0 To 100Step 2

statement…

statement…

Next I

flow chart147

for loop

Statement ;

.

.

end

Flow-Chart
slide148

ตัวอย่างงาน

แสดงตัวเลข 1 ถึง 20

Private Sub Form_Click()

Dim i As Integer

For i = 1 To 20

Print i ;

Next i

End Sub

do loop statement
Do…Loop Statement

Do Until (เงื่อนไข)

Statement

:

Loop

Do while (เงื่อนไข)

Statement

:

Loop

do loop statement150
Do…Loop Statement (ต่อ)

Do

Statement

:

Loop Until (เงื่อนไข)

Do

Statement

:

Loop while (เงื่อนไข)

flow chart do while

False

True

condition

Statement ;

Statement ;

.

.

.

.

end

Flow-Chart (Do While)
slide153

แสดงตัวเลข 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

slide154

แสดงตัวเลข 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

while wend statement
While…Wend Statement

While (เงื่อนไข)

statements

:

Wend

slide156

ตัวอย่างงาน

แสดงตัวเลข 10 ลงไปหา 1

Private Sub Form_Click()

Dim i As Integer

i = 10

While i > 0

Print i

i = i - 1

Wend

End Sub

list box properties
List Box (properties)
  • Sorted
  • Style
    • Standard
    • Checkbox

Name

Columns

List

ListIndex

Text

ListCount

156

method159
Method

List1.RemoveItem index

List1.Clear

List1.AddItem “รายการ”, index

with end with statement
With …End With Statement

With Object_Name

.Properties = Value

.Method

End With

goto statement
Goto Statement

Sub Command1_Click()

GoTo aa

Label1.Caption = “VB"

aa:

Label1.Caption = "Siam”

End Sub

Goto label

Statement…

label :

Statement…

on error goto
On Error Goto…

On Error Goto label

Statement…

label :

Statement…

on error resume next
On Error Resume Next

On Error Resume Next

Statement…

Statement…

slide164
คำสั่งการทำงานต่อเนื่องคำสั่งการทำงานต่อเนื่อง

Resume :ทำงานซ้ำบรรทัดที่เกิด Error ขึ้น

Resume Next: ทำงานบรรทัดถัดจากบรรทัดที่เกิด Error ขึ้น

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

Err.Properties

properties166
Properties

Number

Description

on goto on gosub
On…Goto & On…GoSub

On expression GoSub destinationlist

On expression GoTo destinationlist

slide168

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

ตัวอย่างงาน

slide169

Sorted = True

ตัวอย่างงาน

การย้ายรายการใน List

slide170

Private Sub Form_Load()

lstPrg.AddItem "Widows"

lstPrg.AddItem "Word"

lstPrg.AddItem "Excel"

lstPrg.AddItem "Access"

lstPrg.AddItem "Power Point"

End Sub

หรือ

slide171

Private Sub Form_Load()

With lstPrg

.AddItem "Widows"

.AddItem "Word"

.AddItem "Excel"

.AddItem "Access"

.AddItem "Power Point"

End With

End Sub

slide172

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

slide173

ตัวอย่างงาน

การจัดการกับ List

slide174

Private Sub cmdADD_Click()

If Trim(txtData.Text) <> "" Then

lstInfo.AddItem txtData.Text

End If

txtData.Text = ""

txtData.SetFocus

End Sub

slide175

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

slide176

MultiSelect=Extended

ตัวอย่างงาน

การย้ายข้อมูลใน List 2 List

slide177

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

slide178

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

slide179

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

combo box properties
Combo Box (properties)

โดยทั่วไปใช้งานเหมือน List Box

  • Name
  • Style
    • Dropdown Combo
    • Simple Combo
    • Dropdown List
slide181

ตัวอย่างงาน

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

slide182

ตัวอย่างงาน

สีเขียวอ่อน

สีม่วง

สีทอง

slide183

Private Sub Form_Load()

cmbColor.AddItem "Blue"

cmbColor.AddItem "Green"

cmbColor.AddItem “Magenta"

cmbColor.AddItem "Red"

cmbColor.AddItem "Yellow"

End Sub

slide184

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

function inputbox
Function InputBox

Prompt : “ข้อความที่ต้องการแสดง”

Title : “ข้อความที่แสดงที่หัวของ Box”

Default : ค่าปกติที่ตั้งไว้

ตัวแปร= InputBox(Prompt [,Title] [,Default])

slide187

ตัวอย่างงาน

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

slide188

Dim n As Integer

Dim Ans As String

Private Sub Form_Load()

n = 0

End Sub

slide189

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

slide190

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

slide191

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

drivelistbox properties
DriveListBox (properties)

เช่น EditPlus

Event ส่วนใหญ่ใช้ Change

Name

Drive

dirlistbox properties
DirListBox (properties)

Event ส่วนใหญ่ใช้ Change

Name

Path

filelistbox properties
FileListBox (properties)

Event ส่วนใหญ่ใช้ Click

Name

Path

Filename

Pattern เช่น *.exe;*.xls

slide195

ตัวอย่างงาน

แสดงชื่อไฟล์ และ Path ของไฟล์

slide196

Sub Dir1_Change()

File1.Path = Dir1.Path

End Sub

Sub Drive1_Change()

Dir1.Path = Drive1.Drive

End Sub

Sub File1_Click()

txtPath.Text = File1.Path

txtFilename.Text = File1.FileName

End Sub

timer properties
Timer (properties)

Event ใช้ Timer

Name

Enabled

Interval

slide198
การทำงานกับฟังก์ชันทางวันและเวลาการทำงานกับฟังก์ชันทางวันและเวลา

Time

จะให้ค่าเวลา ณ ปัจจุบัน

Now

จะให้ค่าวันที่และเวลา ณ ปัจจุบัน

slide199

ตัวอย่างงาน

นาฬิกาดิจิตอลจาก Timer

198

slide200

Private Sub Timer1_Timer()

lblTime.Caption = Time

End Sub

static
ตัวแปร Static
  • เป็นตัวแปรที่ไม่ถูกทำลายหลังจาก

จบโปรแกรมย่อย (แต่ละ Event)

  • รูปแบบ

Static NameAs Data_Type

slide202

ตัวอย่างงาน

นับจำนวนการกดปุ่ม

slide203

Private Sub cmdCount_Click()

Static n As Integer

n = n + 1

lblShowNumber.Caption = "Count = " & n

End Sub

' หรือประกาศตัวแปร n เป็นแบบ Private

slide204

ตัวอย่างงาน

ตรวจสอบ Password

Dim n As Integer

Dim x As Integer

slide205

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

slide206

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 If

End Sub

slide207

คุณสมบัติของ Timer

Enabled = False

Interval = 510

ตัวอย่างงาน

ใช้ Timer กำหนดให้ Label เคลื่อนที่

slide208

ตัวอย่างงาน

Private Sub cmdStart_Click()

If cmdStart.Caption = "เริ่ม" Then

Timer1.Enabled = True

cmdStart.Caption = "หยุด"

Else

Timer1.Enabled = False

cmdStart.Caption = "เริ่ม"

End If

End Sub

slide209

Private Sub Timer1_Timer()

lblWalk.Left = lblWalk.Left + 100

End Sub

slide210

Private Sub Timer1_Timer()

lblWalk.Left = lblWalk.Left + 100

If lblWalk.Left >= Me.Width Then

lblWalk.Left = 0

End If

End Sub

slide211

Private Sub cmdDecrease_Click()

Timer1.Interval = Timer1.Interval - 50

End Sub

slide212

Private Sub cmdDecrease_Click()

Timer1.Interval = Timer1.Interval - 50

If Timer1.Interval <= 10 Then

cmdDecrease.Enabled = False

End If

End Sub

slide213

Private Sub cmdIncrease_Click()

cmdDecrease.Enabled = True

Timer1.Interval = Timer1.Interval + 50

End Sub

slide214

กำหนดให้ Label วิ่งรอบฟอร์ม

Sub Form_Load()

fac = "b"

End Sub

slide215

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

slide216

ElseIf fac = "t" Then

lblWalk.Left = lblWalk.Left + 75

lblWalk.Top = lblWalk.Top + 50

If lblWalk.Left >= Me.Width - 1000 Then

fac = "l"

End If

slide217

ElseIf fac = "l" Then

lblWalk.Left = lblWalk.Left - 50

lblWalk.Top = lblWalk.Top + 50

If lblwalk.Top >= Me.Height - 1000 Then

fac = "b"

End If

slide218

ElseIf fac = "b" Then

lblWalk.Left = lblWalk.Left - 50

lblWalk.Top = lblWalk.Top - 50

If lblWalk.Left < 0 Then

fac = "r"

End If

End If

End Sub

picturebox properties
PictureBox (properties)

ใช้ในด้านกราฟิก

Name

AutoSize

BorderStyle

Picture

imagebox properties
ImageBox (properties)

ใช้แสดงรูปภาพบน Form

Name

BorderStyle

Picture

Stretch

method picture image
Method ของ Picture และ Image
  • เช่น
  • Image1.Picture =LoadPicture("c:\cat.jpg")

LoadPicture(“Directory\...\ชื่อไฟล์ภาพ”)

slide222

ตัวอย่างงาน

เมื่อคลิกฟอร์ม ให้ทำการสลับภาพ

slide223

Sub Form_Click()

Image2.Picture = Picture1.Picture

Picture1.Picture = Image1.Picture

Image1.Picture = Image2.Picture

End Sub

slide224

ตัวอย่างงาน

แสดงภาพจากไฟล์ที่เลือก

slide225

Sub Dir1_Change()

File1.Path = Dir1.Path

End Sub

Sub Drive1_Change()

Dir1.Path = Drive1.Drive

End Sub

slide226

Sub File1_Click()

txtPath.Text = File1.Path

txtFile.Text = File1.FileName

Image1.Picture = LoadPicture(File1.Path & _

"\" & File1.FileName)

' ตั้งค่าที่ Pattern ด้วย

End Sub

slide227

แก้ปัญหารูปที่ RootDrive 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

line properties
Line (properties)
  • X1
  • X2
  • Y1
  • Y2

Name

BorderColor

BorderStyle

BorderWidth

slide229
คำสั่งในการวาดเส้นตรงคำสั่งในการวาดเส้นตรง

เช่น

Line (500, 200)-(2000, 1000), QBColor(11)

line(x1,y1) – (x2,y2),Color

slide230

ตัวอย่างงาน

สร้างตารางดังรูป

slide231

ตัวอย่างงาน

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

shape properties
Shape (properties)
  • BorderWidth
  • FillColor
  • FillStyle
  • Shape

Name

BackStyle

BackColor

BorderColor

BorderStyle

slide234

Sub cmdShow_Click()

Shape1.Shape = (Rnd * 5)

Shape1.FillColor = QBColor(Rnd * 15)

Shape1.FillStyle = (Rnd * 7)

Shape1.BorderColor = QBColor(Rnd * 15)

End Sub

slide235
คำสั่งในการวาดวงกลม

เช่น

Circle (1000, 1000), 500

Circle(x,y),radius,color

slide236

ตัวอย่างงาน

วงกลมซ้อน

slide237

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

event mouse
การทำงานกับ Event ของ Mouse

MouseDown เมื่อกดปุ่มของเมาส์

MouseUp เมื่อปล่อยปุ่มของเมาส์

MouseMove เมื่อเลื่อนเมาส์

mouse shift
การใช้ปุ่มบน Mouse พร้อมกับ Shift

ตัวแปร Buttonตัวแปร Shift

1 ปุ่มซ้าย1 กดปุ่ม Shift ร่วม

2 ปุ่มขวา 2 กดปุ่ม Ctrl ร่วม

4 ปุ่มกลาง 4 กดปุ่ม Alt ร่วม

slide240
พารามิเตอร์ของเหตุการณ์ที่เกี่ยวกับเมาส์พารามิเตอร์ของเหตุการณ์ที่เกี่ยวกับเมาส์

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)

slide241

ตัวอย่างงาน

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

slide242

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

slide243

ตัวอย่างงาน

วาดเส้นโดยใช้ Mouse

slide244

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

slide245

Sub Form_MouseUp(Button As Integer, _

Shift As Integer, X As Single, Y As Single)

d = False

End Sub

slide246

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

slide247

กดเมาส์ซ้ายค้างวาดเส้น กดเมาส์ขวาค้างวาดวงกลม

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 If

End Sub

slide248

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

End Sub

common dialog
การใช้ Common Dialog
  • เมนู Project  Components…
    • Microsoft Common Dialog Control 6.0
slide253

ตัวอย่างงาน

การเรียกใช้ Dialog

251

common dialog properties
Common Dialog (properties)
  • Flags
  • InitiDir
  • CancelError

Name

Action

DialogTitle

Filter

FilterIndex

common dialog properties255
Common Dialog (properties) (ต่อ)
  • FontItalic
  • FontStrikethru
  • FontUnderline
  • Color

FileName

FontName

FontSize

FontBold

common dialog method
Common Dialog (Method)
  • ShowFont
  • ShowHelp

ShowOpen

ShowSave

ShowColor

ShowPrinter

filter
ตัวอย่างการใช้ Filter

.Filter= "All Files (*.*)|*.*"

.Filter= "All Files (*.*)|*.*|Text Files (*.txt)|*.txt"

"All Pictures (*.bmp;*.gif;*.jpg)|*.bmp;*.gif;*.jpg"

FilterIndex = 2

slide258

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

slide259

การเรียกใช้ Dialog Color

Private Sub cmdShowColor_Click()

dlg1.Flags = cdlCCRGBInit

dlg1.ShowColor

Label1.ForeColor = dlg1.Color

End Sub

slide260

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

slide262

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

slide263

การเรียกใช้ Dialog Print

Private Sub cmdShowPrinter_Click()

dlg1.ShowPrinter

End Sub

slide264

การเรียกใช้ Dialog Help

Private Sub cmdShowHelp_Click()

dlg1.HelpFile = _

"c:\windows\help\winhlp32.hlp"

dlg1.HelpCommand =cdlHelpContents

dlg1.ShowHelp

End Sub

mdi form
MDI Form

Multiple Document Interface

สร้าง MDI Form

Project  Add MDI Form

เลือก MDI Form

Open

slide266

MDI Form

MDI Child Form

ตัวอย่างงาน

การใช้งาน MDI Form

mdi form267
การกำหนดฟอร์มลูกของ MDI Form
  • ให้กำหนด Properties  MDIChild

ของฟอร์มลูกเป็น True

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

** สร้างได้ 6 ระดับ

slide269

ตัวอย่างงาน

สร้างเมนูดังรูป

slide270

เมนูไฟล์

CaptionName

&File mnufile

Openform1 mnuform1

Openform2 mnuform2

- mnuline

Exit mnuexit

slide271

เมนู Font

CaptionName

&Font mnufont

10 mnu10

12 mnu12

15 mnu15

20 mnu20

Color mnucolor

Red mnured

Green mnugreen

Blue mnublue

slide272

Sub mnuform1_Click()

Form1.Show

End Sub

Sub mnuform2_Click()

Form2.Show

End Sub

การเขียนคำสั่งใน Menu

Sub mnuexit_Click()

End

End Sub

slide274

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

slide275

Sub mnuform3_Click()

Form3.Show

End Sub

Sub mnuexit_Click()

End

End Sub

Sub mnuform1_Click()

Form1.Show

End Sub

Sub mnuform2_Click()

Form2.Show

End Sub

ดูความแตกต่างระหว่างฟอร์ม 2 และ 3

popup menu
Popup Menu

ToolsMenu Editor...

กำหนดรายการเมนูเหมือนการสร้างเมนู โดยรายการหลักให้ ยกเลิก Visible ออก

slide277

ตัวอย่างงาน

สร้าง Popmenu

CaptionName

popup mnupopup

Cut mnucut

Copy mnucopy

Paste mnupaste

Visible=False

popup menu278
การเรียกใช้งาน Popup Menu

เช่น

PopupMenu mnupopup

Popupmenu PopupMenu_Name

slide279

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

sub program
Sub Program

Sub ชื่อโปรแกรมย่อย(parameter)

Statement

:

End Sub

sub program282
ขอบเขตของ Sub Program
  • Private Sub ชื่อโปรแกรมย่อย(parameter)

เป็นโปรแกรมที่ใช้ได้ใน Form นั้นๆ

  • Public Sub ชื่อโปรแกรมย่อย(parameter)

เป็นโปรแกรมที่ใช้ได้ในทุกๆ Form

  • Sub ชื่อโปรแกรมย่อย(parameter)

เหมือนกับ Public Sub

sub program283
การเรียกใช้ Sub Program

หรือ

ชื่อโปรแกรมย่อย(ค่าที่ส่ง)

Call ชื่อโปรแกรมย่อย(ค่าที่ส่ง)

slide284

ตัวอย่างงาน

Sub Program แบบไม่มี Parameter

slide285

Sub Color()

lblShow.BackColor = RGB(HScroll1.Value, _

HScroll2.Value, HScroll3.Value)

lblShow.ForeColor = RGB(255 - HScroll1.Value, _

255 - HScroll2.Value, 255 - HScroll3.Value)

End Sub

slide286

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

slide287

Private Sub HScBlue_Change()

Call Color

lblBlue.Caption = “BLUE = " & HScBlue.Value

End Sub

slide288

ตัวอย่างงาน

Sub Program แบบมี Parameter

slide289

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

slide290

Private Sub cmdTable_Click()

Me.Cls

Call table(Val(txtRow.Text), Val(txtCol.Text))

txtRow.Text = ""

txtCol.Text = ""

txtRow.SetFocus

End Sub

function
Function

Function ชื่อ function (parameter) As datatype

Statement

:

End Function

function292
การเรียกใช้ Function

ตัวแปรหรือ Object =ชื่อ Function(ส่งค่า Parameter)

slide293

ตัวอย่างงาน

การหาค่า Factorial

slide294

Function Fac(n As Integer) As Long

If n = 1 Then

Fac = 1

Else

Fac = n * Fac(n - 1)

End If

End Function

slide295

Private Sub cmdFac_Click()

Dim data As Long

data = Fac(Val(txtNumber.Text))

lblResult.Caption = txtNumber.Text & " != " & data

txtNumber.Text = ""

txtNumber.SetFocus

End Sub

array
การประกาศตัวแปร Array

เช่น

Dim Cost(5) As Integer

Cost(0) = 20

Cost(5) = val(Text1.Text)

Dim ชื่อตัวแปร(UpperBound) As Type

array297
การประกาศตัวแปร Array

เช่น

Dim Score(1 To 4) As Integer

Dim Name(97 To 100) As String

Dim ชื่อตัวแปร(LBound To UBound) As Type

object array
Object แบบ Array

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

slide299

คัดลอก Text1 อีก 2 ตัว

ตัวอย่างงาน

หาค่าเฉลี่ยโดยใช้ Array

slide300

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

data control properties
Data Control (properties)

Name

Caption

Connect

DatabaseName

RecordSource

method record set
Method ของ Record Set
  • Delete
  • Refresh

AddNew

Update

CancelUpdate

method record set304
Method ของ Record Set
  • FindFirst
  • FindLast
  • FindNext
  • FindPrevious

MoveFirst

MoveLast

MoveNext

MovePrevious

object
การกำหนดให้ Object อ้างข้อมูลในฐานข้อมูลได้
  • กำหนดคุณสมบัติ
    • DataSource
    • DataField
data control
การเขียนคำสั่งโปรแกรมกับ Data Control

การย้ายไปยังเรคคอร์ดต่างๆ ใน ReccordSet

MoveFirst ย้ายไปยังเรคคอร์ดแรก

MoveLast ย้ายไปยังเรคคอร์ดสุดท้าย

MoveNext ย้ายไปยังเรคคอร์ดถัดไป

MovePrevious ย้ายไปยังเรคคอร์ดก่อนหน้า

Move ย้ายไปยังเรคคอร์ดที่ระบุ

data control307
การเขียนคำสั่งโปรแกรมกับ Data Control

การค้นหาข้อมูลใน ReccordSet

FindFirst ค้นหาเรคคอร์ดแรกที่ตรงกับเงื่อนไข

FindLastค้นหาเรคคอร์ดสุดท้ายที่ตรงกับเงื่อนไข

FindNext ค้นหาเรคคอร์ดถัดไปที่ตรงกับเงื่อนไข

FindPrevious ค้นหาเรคคอร์ดก่อนหน้าที่ตรงกับเงื่อนไข

slide308

ตัวอย่างงาน

แสดงข้อมูลจากฐานข้อมูลที่สร้างขึ้น

Data1 กำหนด DatabaseName และ RecordSource

Text กำหนด DataSource และ DataField

slide309

Private Sub cmdAdd_Click() ' ปุ่ม Add

Data1.Recordset.AddNew

txtId.SetFocus

cmdOK.Visible = True

cmdADD.Visible = False

End Sub

slide310

Private Sub cmdOK_Click() 'ปุ่ม OK

Data1.Recordset.Update

cmdADD.Visible = True

cmdOK.Visible = False

End Sub

เมื่อทำการรันให้ ปุ่ม OK ซ้อนปุ่ม Add

slide311

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

slide312

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

slide314

' ให้ใส่ตำแหน่งที่มีอยู่ใน Database

Private Sub Form_Load()

cmbPosition.AddItem "Manager"

cmbPosition.AddItem "Saleman"

cmbPosition.AddItem “Reception"

End Sub

slide315

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

slide316

ต่อปุ่ม 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 If

End Sub

slide317

Private Sub cmdFindNext_Click() 'ปุ่ม FindNext

Data1.Recordset.FindNext t

If Data1.Recordset.NoMatch Then

MsgBox "End of Data", 32

End If

End Sub

slide318

ตัวอย่างงาน

ป้อน user name และ password เพื่อเข้าไปใช้ Database

ถ้าป้อน admin และ password = dusit สามารถใช้ Database ได้ครบ

ถ้าป้อน user และ password = sitd สามารถใช้ Database บางส่วน

slide319

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

slide320

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