คำสั่งเกี่ยวกับ Listbox ที่ควรรู้
- listbox1.Items.Add("ทดสอบ")
- listbox1.Items.Remove("ทดสอบ")
- listbox1.Count
- listbox1.Left = 10
- msgbox(listbox1.Items(0))
- msgbox(listbox1.Items(sender.SelectedIndex.toString))
- listbox2.Items.Add(listbox1.Items(sender.SelectedIndex.toString))
- AddHandler listbox1.Click, AddressOf lb1EventHandler
- Public Sub listbox1EventHandler(ByVal sender As Object, ByVal e As System.EventArgs)
- msgbox(sender.SelectedIndex.ToString)
|
แบบ 2 control ในฟอร์มเดียว
- สร้างฟอร์มผ่าน runtime
- ย้ายค่าระหว่าง Listbox
- ทำงานในฟอร์มที่สร้างใหม
- โปรแกรมนี้ไม่ใช้ form1่
| Public Class Form1
Dim instance As New Form
Dim lb1 As New ListBox
Dim lb2 As New ListBox
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
lb1.Items.Add("ทดสอบ")
lb1.Items.Add("ไทยออล")
lb1.Left = 10 ' pixels
AddHandler lb1.Click, AddressOf lb1EventHandler
instance.Controls.Add(lb1)
' ===
lb2.Items.Add("โยนก")
lb2.Items.Add("ไทยเอบีซี")
lb2.Left = 150 ' pixels
AddHandler lb2.Click, AddressOf lb2EventHandler
instance.Controls.Add(lb2)
' ===
instance.Size = New Size(300, 200)
instance.ShowDialog()
End Sub
Public Sub lb1EventHandler(ByVal sender As Object, _
ByVal e As System.EventArgs)
Dim s As ListBox = sender
Dim txt As String = s.Items(s.SelectedIndex.ToString)
lb1.Items.Remove(txt)
lb2.Items.Add(txt)
End Sub
Public Sub lb2EventHandler(ByVal sender As Object, _
ByVal e As System.EventArgs)
Dim s As ListBox = sender
Dim txt As String = s.Items(s.SelectedIndex.ToString)
lb2.Items.Remove(txt)
lb1.Items.Add(txt)
End Sub
End Class
|
แบบ design เรียกใช้ runtime
- มีทั้งแบบ design และ runtime
- form1 ถูกเปิดผ่าน class ปกติ
- click ปุ่มจะเปิดฟอร์มใหม่
- เลือกค่าจาก listbox ส่งให้ form1
| Public Class Form1
Dim instance As New Form
Dim lb1 As New ListBox
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
lb1.Items.Clear()
lb1.Items.Add("1,ทดสอบ")
lb1.Items.Add("2,ไทยออล")
lb1.Left = 10 ' pixels
AddHandler lb1.Click, AddressOf lb1EventHandler
instance.Controls.Add(lb1)
instance.Size = New Size(300, 200)
instance.ShowDialog()
End Sub
Public Sub lb1EventHandler(ByVal sender As Object, _
ByVal e As System.EventArgs)
Dim s As ListBox = sender
Dim txt As String = s.Items(s.SelectedIndex.ToString)
Dim ar As String() = Split(txt, ",")
TextBox1.Text = ar(1)
instance.Close()
End Sub
End Class
|
แบบ 2 ฟอร์มใน design time
- สร้าง form1 และ form2
- สร้าง listbox ทั้ง 2 form
- เปิดฟอร์มผ่าน button
- ส่งค่าจาก listbox ไปฟอร์มอื่น
| Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
ListBox1.Items.Add("1,ทดสอบ")
ListBox1.Items.Add("2,ไทยออล")
AddHandler ListBox1.Click, AddressOf lb1EventHandler
End Sub
Public Sub lb1EventHandler(ByVal sender As Object, _
ByVal e As System.EventArgs)
Dim s As ListBox = sender
Dim txt As String = s.Items(s.SelectedIndex.ToString)
Dim ar As String() = Split(txt, ",")
Form2.ListBox1.Items.Add(ar(1))
End Sub
Private Sub Button1_Click_1(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Form2.Show()
End Sub
End Class
|
|