Nattawut Phetmak
Jack of all Trades
การรับค่าจากผู้ใช้เข้ามา แบบง่ายที่สุดคือการใช้ TextBox ร่วมกับ Button เพื่อรับข้อมูล
Private Sub testInput(...) Handles btn1.Click
Dim input_txt As String
Dim input_num As Integer
input_txt = txtBox1.Text
input_num = Val(txtBox2.Text)
End Sub
หรือจะให้ผู้ใช้กดปุ่ม เพื่อมี InputBox โผล่ขึ้นมาก็ได้
Private Sub testInput(...) Handles btn1.Click
Dim input_txt As String
input_txt = InputBox("Says something.")
End Sub
เนื่องจาก Visual Basic เน้นการเขียนโปรแกรมแบบ GUI ดังนั้นการรับค่าจึงไม่ได้มีแต่ข้อความเพียงอย่างเดียว สำหรับการรับค่าเข้ามาแบบอื่นๆ ที่ควรรู้จักคือ
CheckBox จะให้ค่าเป็น True หรือ False เท่านั้น
Private Sub testOthersInput(...) Handles btn1.Click
MessageBox.show(chkBox1.Checked)
End Sub
ส่วน RadioButton ก็จะเหมือนกับ CheckBox ทุกประการ ยกเว้นที่ผู้ใช้จะสามารถเลือกได้เพียง 1 อันภายในเขตของ GroupBox หนึ่งๆ เท่านั้น
ด้าน ListBox จะคล้ายกับ RadioButton ตรงที่สามารเลือกได้เพียง 1 อย่างเท่านั้น แต่จะใช้ได้สะดวกกว่าเมื่อมีตัวเลือกจำนวนมากๆ การกำหนดตัวเลือกเริ่มต้นให้มันจะทำผ่าน properties -> data -> items
ก็ได้ หรือจะกำหนดค่าให้มันตอนโหลดโปรแกรมดังนี้
Private Sub frmLoad(...) Handles MyBase.Load
lstBox1.Items.Add("Apple")
lstBox1.Items.Add("Google")
lstBox1.Items.Add("Microsoft")
End Sub
และเมื่อต้องการค่าของมันว่าผู้ใช้เลือกตัวเลือกไหน ก็เรียกดูได้จาก
Private Sub testOthersInput(...) Handles btn1.Click
MessageBox.show(lstBox1.SelectedIndex)
MessageBox.show(lstBox1.SelectedItem)
End Sub
ถ้าผู้ใช้ไม่ได้เลือกอะไรเลย จะได้ค่า index กลับมาเป็น -1 หรือได้ค่า item เป็นข้อความว่างครับ
ส่วนการแสดงผลข้อมูลออกมานั้น นอกจากจะใช้ MessageBox
อย่างที่ใช้ประจำในตอนก่อนๆ แล้ว ยังสามารถกำหนดค่าของสิ่งต่างๆ ให้เปลี่ยนเป็นคำที่ต้องการได้ด้วย
Private Sub testOutput(...) Handles btn1.Click
txtBox1.Text = "Hello World."
chkBox1.Checked = True
lstBox1.SelectedIndex = 2
End Sub