พื้นฐาน VB.Net

Reserved Words ของ VB.NET 
            AddHandler AddressOf Allas And AndAlso Ansi As Assembly Auto Boolan ByRef Byte ByVal Call Case Catch Cbool Cbyte CChar CDate CDec CDbl Char CInt Class CLng CObj Const CShort CSng Cstr CType Date Decimal Deciare Default Deiegate Dim DirectCast Do Double Each Else Elself End Enum Erase Error Event Exit ExternalSource False Finally For Friend Function Get GetTupe GoTo Handles If Implements Imports In Inherits Integer Is Let Lib Like Long Me Mod Module MustInherit MustOverride MyBase MyClass Namespace New Next Not Nothing Notinheritale NotOverrdable Object On Option Optional Or OrElse Overloads Overridable Overrides ParamArray Preserve Private Property Protected Public RaiseEvent ReadOnly ReDim Regin REM RemoveHandler Resume Return Select Set Shadows Shared Short Single Static Step Stop String Structure Sub SyncLock Then Throw To True Try TypeOf Unlcode Untill Variant When While With WithEvents WriteOnly Xor #Const #ExternalSource #If…Then…#Else #Region
           สำหรับ VB.NET เลิกใช้ Let และ Variant ไปแล้ว แต่ยังเป็น Reserve Word อยู่
การตั้งชื่อตัวแปร
           ตัวแปร คือ สัญลักษณ์ที่ใช้แทนข้อมูลชนิดต่าง ๆ โดยข้อมูลจะถูกนำมาเก็บไว้ในตัวแปร ซึ่งจะต้องตรงกับชนิดของตัวแปรที่ได้กำหนดไว้
โดยมีข้อกำหนดของการตั้งชื่อ ดังต่อไปนี้
1. ชื่อต้องเริ่มด้วยตัวอักษร a-z หรือ A-Z เท่านั้น
2. ตัวถัดไปจะตามด้วยอักษรหรือตัวเลขก็ได้
3. ในระหว่างชื่อตัวแปรห้ามมีอักขระพิเศษ ยกเว้นเครื่องหมาย _ (Under Scroll)
4. จะต้องไม่ซ้ำกับ Reserve Words
ชนิดของข้อมูลใน  VB.NET
 
การประกาศตัวแปร
VB.NET จะใช้คำสั่ง Dim ในการประกาศตัวแปร มีรูปแบบดังนี้


          Dim< ชื่อตัวแปร >As< ชนิดข้อมูล >


ตัวอย่าง เช่น
        
          Dim myInt As String
          Dim myStr As String       
หากมีการประกาศโดยไม่ระบุชนิดข้อมูล จะถือว่าเป็นตัวแปรชนิด “Object”
ตัวอย่าง เช่น
           Dim var
สามารถใช้คำสั่ง Dim ประกาศตัวแปรพร้อมกันหลายตัวได้
กรณีมีชนิดข้อมูลเดียวกัน เช่น
            Dim s, b, c As Integer
กรณีชนิดข้อมูลแตกต่างกัน เช่น
            Dim d As Integer, e As Boolean, f As String
การกำหนดค่าให้กับตัวแปร
ชนิดตัวเลข เช่น


            Dim g As Integer = 12
            Dim h As Double = 12.345
ชนิด Boolean เช่น
            Dim I As Boolean = True
            Dim j As Boolean = False
ชนิด String เช่น
            Dim k As String = “VB.NET”
            Dim I As String =”I choose””VB.NET””for programming”


การกำหนดตัวแปรที่เป็นค่าคงที่ ทำได้ดังนี้
          1. กำหนดค่าไม่ระบบชนิดข้อมูล มีรูปแบบดังนี้
Const< ชื่อตัวแปร >< ค่าของตัวแปร >
ตัวอย่าง เช่น Const PI = 3.14159
           2. กำหนดค่าโดยระบุชนิดข้อมูล มีรูปแบบ ดังนี้
Const< ชื่อตัวแปร >As< ชนิดข้อมูล >=< ค่าของตัวแปร >
ตัวอย่าง เช่น Const num As Integer = 5
Operator ใน VB.NET
Arithmetic Operator สำหรับการคำนวณ
            +,-,*,/,^ (ยกกำลัง) ,Mod (หารเอาเศษ) ,\ (หารเอาผล)
Comparison Operator สำหรับการเปรียบเทียบค่า
            =, <>, >, <, >= และ =<
Assignment Operator สำหรับการกำหนดค่า
           =, ^=,*=, /=, \=, +=, -=, &=
ตัวอย่าง เช่น a\=5 ‘ คือ a = a/5 เอาผลลัพธ์ไม่เอาเศษ
ถ้ามีคำสั่ง h=”VB” และ g=”.NET” แล้วคำสั่ง h&=g
ผลลัพธ์ที่ได้ คือ h จะมีค่าเป็น “VB.NEET” คือนำข้อความมาต่อกัน
Logical/Bitwise Operator สำหรับการเปรียบเทียบนิพจน์ 2 นิพจน์
           And นิพจน์เป็นจริงทั้งคู่เป็นผลลัพธ์เป็นจริง นอกนั้นเป็นเท็จทั้งหมด
           Or นิพจน์เป็นเท็จทั้งคู่ผลลัพธ์เป็นเท็จ นอกนั้นเป็นจริงทั้งหมด
           Not จะได้ค่าตรงกันข้ามกับค่าของนิพจน์นั้นๆ
           Xor นิพจน์ทั้ง 2 มีค่าเหมือนกัน (จริง-จริง/เท็จ-เท็จ) ผลลัพธ์เป็นเท็จนอกนั้นเป็นจริงทั้งหมด
String Concatenation Operator สำหรับการเชื่อมต่อข้อความเข้าด้วยกัน มีอยู่ 2 เครื่องหมาย คือ & หรือ + มีผลเหมือนกัน ตัวอย่าง เช่น
            Str = “Hello” & “VB” + “.NET”
แต่การใช้เครื่องหมาย & กับ + ยังมีข้อแตกต่างกัน คือ เครื่องหมาย & สามารถเขื่อมต่อข้อมูลต่างชนิดได้ เช่น
            Str1 = “”VB.NET” & 2008
แต่เครื่องหมาย + จะต้องแปลงชนิดข้อมูลก่อน เช่น
            Str2 = “VB.NET” + Cstr(2008) ‘ ใช้ฟังก์ชั่น Cstr() ในการแปลง หรือ
            Str3 = “VB.NET” + 2008.ToString ‘ ใช้ .ToString ในการแปลง


การ Comment หรือ Remark ใน VB.NET ใช้เครื่องหมาย ‘ (Single Quote)
Statement ใน VB.NET
             คำสั่งใน VB.NET คือ 1 บรรทัด คือ 1 คำสั่ง ตาหากคำสั่งนั้นๆยาวมากๆก็จะสามารถใช้มากกว่า 1 บรรทัดในการเขียนคำสั่งได้โดยใช้เครื่องหมาย _ (under scroll) ได้ เช่น
              Dim str As String =_
                   “Hello VB.NET,,,!”
แต่มีข้อยกเว้น หากข้อความยังไม่สิ้นสุดจะไม่สามารถใช้ _ ต่อคำสั่งได้ เช่น
              Dim str As String = “Hello_
                     VB.NET…!” ‘ แบบนี้ไม่สามารถใช้งานได้จะต้องใช้คำสั่งดังนี้
                                                                                               Dim str As String =”Hello”+_
                     ”VB.NET…!” การรับข้อมูลและแสดงข้อความใน VB.NET
การรับข้อมูลใน VB.NET จะใช้คำสั่ง InputBox() ในการรับข้อมูล ทำได้ดังนี้
               Dim user As String = InputBox(“ กรุณาใส่ชื่อผู้ใช้งาน ”)
การแสดงข้อความใน VB.NET จะใช้คำสั่ง MsgBox() ในการแสดงข้อความ ทำได้ดังนี้
               MsgBox(“Welcome to VB.NET”)
หากข้อความยาวต้องการให้ขึ้นบรรทัดใหม่ใน VB.NET มีคำสั่งที่ชื่อว่า
              vbNewLine เพื่อใช้กำหนดให้ขึ้นบรรทัดใหม่ โดยใช้งานดังนี้ เช่น
              MsgBox(“Welcome to “+vbLine+”VB.NET”+vbNewLine+” 2008” )


การตรวจสอบเงื่อนไขใน VB.NET
คำสั่ง If…Then…End If มีรูปแบบการใช้งาน ดังนี้
               If< เงื่อนไข >Then
                     < คำสั่งต่างๆทำงานเมื่อเงื่อนไขหลัง If เป็นจริง >
               End If
คำสั่ง If..Then..Else//End If มีรูปแบบการใช้งาน ดังนี้
               If< เงื่อนไข >Then
                    < คำสั่งต่างๆทำงานเมื่อเงื่อนไขหลัง If เป็นจริง >
               Else
                    < คำสั่งต่างๆทำงานเมื่อเงื่อนไขหลัง If เป็นจริง >
               End If
คำสั่ง If…Then…Else If…Then… …End If มีรูปแบบการใช้งาน ดังนี้
               If< เงื่อนไขที่ 1>Then
                     < คำสั่งต่างๆทำงานหลังเงื่อนไขที่ 1 เป็นจริง >
               Else If< เงื่อนไขที่ 2>Then
                     < คำสั่งต่างๆทำงานหลังเงื่อนไขที่ 2 เป็นจริง >
               Else If< เงื่อนไขที่ 3>Then
                     < คำสั่งต่างๆทำงานหลังเงื่อนไขที่ 3 เป็นจริง >
               Else
                     < คำสั่งต่างๆทำงานเมื่อเป็นกรณีอื่นๆ >
               End If
คำสั่ง If ซ้อน If หรือ Nested If มีรูปแบบการใช้งาน ดังนี้
               If< เงื่อนไขที่ 1>Then
                     < คำสั่งต่างๆทำงานเมื่อเงื่อนไขที่ 1 เป็นจริง >
                     If< เงื่อนไขที่ 2>Then
                           < คำสั่งต่างๆทำงานเมื่อเงื่อนไขที่ 2 เป็นจริง >
                           If< เงื่อนไขที่ 3>Then
                                < คำสั่งต่างๆทำงานเมื่อเงื่อนไขที่ 3 เป็นจริง >
                           End If
                      End If
                 End If
คำสั่ง IIF มีรูปแบบการใช้งาน ดังนี้
                 IIf(< เงื่อนไข >), ผลลัพธ์กรณีเงื่อนไขเป็นจริง , ผลลัพธ์กรณีเงื่อนไขเป็นเท็จ  
                 เช่น
                       Dim x As Integer =5
                       Dim chkNum As String = IIf(x mod 2 = 0, “ คู่ ”,” คี่ ”)
                 ผลลัพธ์ของ chkNum จะมีค่าเท่ากับ “ คี่ ”


คำสั่ง Select…Case มีรูปแบบการใช้งาน ดังนี้
                  Select Case< ตัวแปร >
                           Case< เงื่อนไขที่ 1>
                                      < คำสั่งต่างๆเมื่อค่าตัวแปรกับเงื่อนที่ 1>
                           Case< เงื่อนไขที่ 2>
                                      < คำสั่งต่างๆเมื่อค่าตัวแปรเท่ากับเงื่อนไขที่ 2>
                            …
                           Case Else
                                      < คำสั่งต่างๆเมื่อค่าตัวแปรเป็นกรณีอื่นๆ >
                  End Select
ตัวอย่างที่ 1 สำหรับการใช้คำสั่ง Select…Case
                  Select Case size
                          Case “S”
                                 viewSize= “Small”
                          Case ”M”
                                 viewSize=”Medium”
                          Case Else
                                  viewSize= “Large”
                    End Select
ตัวอย่างที่ 2 สำหรับการใช้คำสั่ง Select…Case *** ใช้ Case หลายเงื่อนไข
                    Select Case month
                           Case “April”,”June”,”September”,”November”
                                     aDay =” 30”
                           Case “February”
                                     aDay =”28/29”
                           Case Else
                                     aDay =” 31”
                     End Select
ตัวอย่างที่ 3 สำหรับการใช้คำสั่ง Select…Case *** ใช้ Is กับ Case
                     Select Case num
                            Case Is > 100
                                    chkNum = “Greater than 100”
                            Case is < 100
                                    chknum = “Less than 100”
                            Case Else
                                    chkNum = “Equal 100”
                      End Select
ตัวอย่างที่ 4 สำหรับการใช้คำสั่ง Select…Case *** ใช้ To กับ Case
                      Select Case ch
                             Case “ 0” To “ 9”
                                      chChar = “0- 9”
                             Case “a” To “z”
                                      chChar = ‘a-z”
                             Case Else
                                      chChar = “Invalid”
                       End Select


การใช้งานลูปใน VB.NET
For Loop มีรูปแบบการใช้งาน ดังนี้
           For< ตัวแปร > = < ค่าเริ่มต้น > To < ค่าสุกท้าย >[Step< ค่าที่เพิ่ม/ลดในแต่ละรอบ >]
                  < คำสั่งต่างเมื่อเงื่อนไข For ยังเป็นจริงอยู่ >
           Next
ตัวอย่าง เช่น
           For I = 1 To 5                       For I = 10 To 0 Step -2         ‘ ลดครั้งละ 2
                   Sum +I          หรือ                    sum +=i
           Next                                      Next
            จะเห็นว่าหากไม่ระบุ Step จะเพิ่มรอบละ 1 และยังสามารถใช้กับจำนวนจริงที่เพิ่ม หรือลด เป็นจุกทศนิยมได้ด้วย เช่น For i=5.23 To 1.01 Step -0.01 เป็นต้น
Nested For Loop หรือการใช้งาน For ซ้อน For มีรูปแบบการใช้งาน ดังนี้
            For< ตัวแปรที่ 1 >=< ค่าเริ่มต้น >To< ค่าสิ้นสุด >[Step< เพิ่ม/ลด >
                     < คำสั่งต่างๆ... >
            For< ตัวแปรที่ 2 >=< ค่าเริ่มต้น >To< ค่าสิ้นสุด >[Step< เพิ่ม / ลด >
                     < คำสั่งต่างๆ... >
            Next
Next
While Loop การทำงานเมื่อเงื่อนไขหลัง While เป็นจริง มีรูปแบบการใช้งาน ดังนี้
             While< เงื่อนไข >
                     < คำสั่งต่างๆ... >
                     < เพิ่ม/ลดค่าตัวแปรเงื่อนไข >
             End While


ตัวอย่าง เช่น
             While chk <= 10
                       Sum += chk
                       chk += 1
              End While
Do…Loop While จะมีการทำงานไปก่อน 1 รอบ แล้วตรวจสอบว่าเงื่อนไขหลัง While ว่ายังเป็นจริงอยู่หรือไม่ ถ้าเป็นจริงก็ยังทำงานต่อไป จนกว่าจะเป็นเท็จจึงออกจากการทำงาน มีรูปแบบการใช้งาน ดังนี้
              Do
                        < คำสั่งต่างๆ... >
              Loop While(< เงื่อนไข >)
ตัวอย่าง เช่น Do
                         sum += x
                         x += 2
                  Loop While (x <= 20)
Do…Loop Until จะมีการทำงานไปก่อน 1 รอบ แล้วตรวจว่าเงื่อนไขหลัง Until ว่าเป็นจริงหรือไม่ ถ้าเป็นจริงก็จะออกจากการทำงาน
                Do
                           < คำสั่งต่างๆ …>
                Loop Until(< เงื่อนไข >)
ตัวอย่าง เช่น Do
                           sum += x
                           x +=2
                   Loop Until(x =20 )          ‘ ระวังเรื่องการกำหนดค่าตัวแปรเริ่มต้น
ตัวอย่างการใช้งาน Do…Loop While/Until ให้ทำการสร้าง Project ใหม่ชื่อว่า      “DoLoopWhileUntil” โดยให้เขียน code ในส่วนของ Form1_Load ดังนี้


 
ถ้าตอบ Yes 
ถ้าตอบ No ก็จะไม่สามารถออกจาก Loop ได้ และจำนวนคำถามที่ก็จะเพิ่มขึ้นเรื่อย ๆ 
  
 
คำสั่ง Exit ช้ำสำหรับให้หยุดการทำงานภายใน Loop ในรูปแบบต่างๆโดยสามารถสั่งไว้ใน Loop ชนิดต่างๆ คือ For, Do และ While โดยใช้คำสั่งใน Loop ชนิดต่างๆได้ ดังนี้
            สำหรับ For Loop ให้ใช้คำสั่ง Exit For
            สำหรับ Do…Loop While หรือ Do…Loop Until ให้ใช้คำสั่ง Exit Do
            สำหับ While… Loop ให้ใช้คำสั่ง Exit While
ตัวอย่าง เช่น Do
                        If x = 15 Then
                            Exit Do
                        End If
                        x+2
                   Loop While(x <= 20)
คำสั่ง Continue ใช้สำหรับข้ามรอบการทำงานภายใน Loop ในรูปแบบต่างๆโดยสามารถสั่งไว้ใน Loop ชนิดต่างๆ คือ For , Do และ While โดยใช้คำสั่งต่างๆ ได้ดังนี้
            สำหรับ For ให้ใช้คำสั่ง Continue For
            สำหรับ Do…Loop While หรือ Do…Loop Until ให้ใช้คำสั่ง Continue Do
            สำหรับ While… Loop ให้ใช้คำสั่ง Continue While
ตัวอย่าง เช่น Do
                          x+=1
                          If x = 15 Then
                                Continue Do
                          End If
                          sum += x           ' 15 จะไม่ถูกนำมารวมให้กับตัวแปร sum ด้วย
                   Loop While(x <= 20)
ขอบเขตของตัวแปร จะมีลักษณะเช่นเดียวกับภาษาอื่นๆ คือ จะมีลักษณะเป็น Block เช่นกัน คือ ตัวแปรถูกประกาศในระดับใด ก็จะสามารถใช้งานได้ในระดับนั้น เท่านั้น
เช่น       If x = 5 Then
                  Dim y As Integer = x + 5
            End If
            MsgBox(y) ‘***Error*** ตัวแปน y ถูกยกเลิกการใช้งานแล้ว
         ตัวแปร y ถูกประกาศใช้งานภายใน If เมื่อออกจาก If จะไม่สามารถใช้งาน y ได้อีก เพราะว่า if จะอยู่ระดับเดียวกันกับ MsgBox แต่ตัวแปร y อยู่ภายใน If ซึ่งเป็นระดับที่ต่ำกว่า MsgBox() จึงไม่สามารถเรียกใช้งานตัวแปร y ได้อีก
หมายเหตุ หากต้องการเขียนคำสั่งในบรรทัดเดียวกันให้ขั้นด้วย “,” Colon
ตัวแปร Static คือ ตัวแปรที่เก็บค่าล่าสุดไว้ตลอดเวลาในขณะที่โปรแกรมยังคงทำงาน (หรือกำลัง Run อยู่) โดยมีรูปแบบการใช้งาน ดังนี้
                 Static< ตัวแปร >As< ชนิดข้อมูล >[=< ค่าเริ่มต้น >]
ตัวอย่าง เช่น
                 Static I, x As Integer
            ให้ทดลองสร้าง Project โดยใช้ชื่อว่า “Static Variable” แล้วให้เขียน code ในส่วนของ Form1_Click ดังต่อไปนี้ (โดยให้ทดลอง Click บนฟอร์มหลายครั้งสังเกตค่า)



  กรณีศึกษา





















No comments:

Post a Comment