Array
อาร์เรย์ ชุดหรือคำสั่งของข้อมูลที่เก็บในอาร์เรย์จะประกอบไปด้วยข้อมูลย่อยๆ ที่เรียกว่า “สมาชิก” หรืออิลิเมนต์ ของอาร์เรย์ สมาชิกแต่ละตัวในอาร์เรย์ จะมีเลขลำดับ(Index) ที่ต่อเนื่องกันไป โดยเริ่มต้นที่ 0,1,2… ไป จนสุดอาร์เรย์
สร้างอาร์เรย์และขอบเขตของอาร์เรย์ Dim ชื่ออาร์เรย์(ขอบเขตบน) As ชนิดข้อมูล ตัวอย่าง Dim num(2) as integer ‘อาร์เรย์เก็บข้อมูลชนิด Integer มีสมาชิกทั้งหมด 3 ตัว
สร้างอาร์เรย์และขอบเขตของอาร์เรย์ ฟังก์ชั่นตรวจสอบของเขตของอาร์เรย์ Dim nums(9) As integer Dim bound as integer=ubound(nums) ผลลัพธ์ที่ได้คือ bound มีค่าเท่ากับ 9
สร้างอาร์เรย์และขอบเขตของอาร์เรย์ ฟังก์ชั่นนับสมาชิก Dim nums(9) As integer Dim len as integer=nums.length ผลลัพธ์ที่ได้คือ len มีค่าเท่ากับ 10
การกำหนดข้อมูลให้กับอาร์เรย์ การกำหนดข้อมูลให้สมาชิกทีละตัว Dim thaiweekdays(6) As string thaiweekdays(0)=“อาทิตย์” thaiweekdays(1)=“จันทร์” thaiweekdays(6)=“เสาร์”
การกำหนดข้อมูลให้กับอาร์เรย์ การกำหนดข้อมูลแบบค่าเริ่มแรก dim ชื่ออาร์เรย์() as ชนิดข้อมูล={สมาชิก 1, สมาชิก 2, ….} ตัวอย่าง dim nums() as integer={11, 12, 13} dim weekday () as string={“อาทิตย์”,”จันทร์”,”อังคาร”}
การกำหนดข้อมูลให้กับอาร์เรย์ การนำข้อมูลจากพร็อปเพอร์ตี้หรือเมธอดของออบเจ็กต์อื่น dim lines() as string=textbox1.lines หรือ dim str as string=“www.google.com” dim s() as string=str.split(“.”) ‘---- s={“www”, “google” ,“com”}
การเรียงลำดับข้อมูลในอาร์เรย์ Dim a() as integer={21,10,1,3,56,12} เรียงจากน้อยไปหามาก array.sort(a) ‘—a={1,3,10,12,21,56} เรียงจากมากไปหาน้อย array.Reverse(a) ‘—a={56,21,12,10,3,1}
ตัวอย่าง Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim nums() As String = TextBox1.Lines MessageBox.Show(UBound(nums)) End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click MessageBox.Show(nums.Length) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim sum As Integer For i = 0 To UBound(nums) sum += i Next MessageBox.Show(sum) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Dim str As String = "" For Each x In nums str &= x + vbNewLine MessageBox.Show(str) Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Dim indexs As Integer = TextBox2.Text MessageBox.Show(nums(indexs)) End Class
อาร์เรย์ 2 มิติ และ jagged array อาร์เรย์แบบ 2 มิติ dim ชื่ออาร์เรย์(,) as ชนิดข้อมูล={ {สมาชิก 1, สมาชิก 2, ….}, _ {สมาชิก 1, สมาชิก 2, ….}, _ {สมาชิก 1, สมาชิก 2, ….} } ตัวอย่าง dim nums(,) as integer={ {11, 12, 13}, {11, 12, 13}, {11, 12, 13} }
อาร์เรย์ 2 มิติ และ jagged array อาร์เรย์แบบ jagged array dim ชื่ออาร์เรย์()() as ชนิดข้อมูล={_ new integer() {สมาชิก 1, สมาชิก 2, ….}, _ new integer() {สมาชิก 1, สมาชิก 2, สมาชิก 3 ,….}, _ }
อาร์เรย์ 2 มิติ และ jagged array อาร์เรย์แบบ jagged array dim jagg()() as integer ={_ new integer() {1, 2,}, _ new integer() {1, 2, 3 }, _ }
คอนโทรลชนิดตัวเลือก Combobox Listbox checkedlistbox
คอนโทรลชนิดตัวเลือก คำสั่งเพิ่มข้อมูล Item.add(รายการ) = เพิ่มตัวเลือกเข้าไปในคอลโทรลรายการตัวสุดท้าย --------- Listbox1.items.add(“one”) Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งเพิ่มข้อมูล Item.Addrange(รายการแบบอาร์เรย์) = เพิ่มข้อมูลเป็นช่วง --------- Dim items() as String={“a”, “s”, “d”} Listbox1.items.addrange(items) Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งเพิ่มข้อมูล Item.insert(ลำดับ,รายการ) = แทรกรายการในลำดับที่ระบุ --------- Listbox1.items.insert(3,”red”) Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งลบข้อมูล Items.Remove(รายการ) = ลบรายการที่ระบุออกไป Items.Remove(ลำดับรายการ) = ลบรายการในลำดับที่ระบุ Items.clear() = ลบรายการทิ้งไป Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งลบข้อมูล listbox1.Items.Remove(“Five”) listbox1.Items.Remove(3) listbox1.Items.clear() Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งนับและเรียงลำดับ Items.count = นับจำนวน Items.sorted = เรียงลำดับจากน้อยไปหามาก ----------------------------------------------------------------------------------------------------- listbox1.Items.count listbox1.Items.sorted=true Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งนับและเรียงลำดับ Items.count = นับจำนวน Items.sorted = เรียงลำดับจากน้อยไปหามาก ----------------------------------------------------------------------------------------------------- listbox1.Items.count listbox1.Items.sorted=true Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คอนโทรล Combobox Dropdownstyle Dropdownlist = แสดงรายการให้เลือกแต่พิมพ์ไม่ได้ Dropdow = แสดงรายการให้เลือกแต่พิมพ์ได้ Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คำสั่งเพิ่มเติม selecteditem = ตรวจสอบรายการที่ถูกเลือก selectedindex = ตรวจสอบลำดับรายการที่ถูกเลือกถ้าไม่มีคืนค่า -1 ----------------------------------------------------------------------------------------------------- combobox1.selectedinem= “red” combobox1. selectedindex = 3 Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class
คอนโทรลชนิดตัวเลือก คอนโทรล Combobox ตัวอย่าง Public Class Form1 Private cats() As String = {"Notebook", "Digital Camera", "Mobile Phone"} Private brands()() As String = {New String() {"Acer", "Asus", "Dell", "HP"}, _ New String() {"Canon", "Sony", "Fuji", "Olympus", "Nikon"}, _ New String() {"Nokia", "Samsung", "IPhone"}} Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboCategory.Items.AddRange(cats) ComboCategory.SelectedIndex = 0 End Sub Private Sub ComboCategory_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboCategory.SelectedIndexChanged '-- ตรวจสอบลำดับรายการหมวดสินค้าที่ถูกเลือก '-- มาเป็นลำดับในการอ่านข้อมูลจากอาร์เรย์ยี่ห้อสินค้า Dim idx As Integer = ComboCategory.SelectedIndex ComboBrand.Items.Clear() ComboBrand.Items.AddRange(brands(idx)) ComboBrand.SelectedIndex = 0 End Class