บทช่วยสอนเกี่ยวกับการควบคุม TEXTBOX ใน VB.Net: คุณสมบัติพร้อมตัวอย่าง
⚡ สรุปอย่างชาญฉลาด
ข้อความBox ส่วนควบคุมใน VB.Net รับข้อมูลป้อนเข้าจากผู้ใช้ Windows กำหนดและเปิดเผยคุณสมบัติ เช่น Multiline, PasswordChar, MaxLength และ ReadOnly เพื่อกำหนดวิธีการป้อน ซ่อน จำกัด หรือล็อกข้อความขณะรันไทม์
ข้อความคืออะไรBox ควบคุม?
ข้อความBox การควบคุมช่วยให้คุณป้อนข้อความในแบบฟอร์มของคุณระหว่างรันไทม์ การตั้งค่าเริ่มต้นคือจะยอมรับข้อความเพียงบรรทัดเดียว แต่คุณสามารถแก้ไขได้เพื่อยอมรับหลายบรรทัด คุณยังสามารถใส่แถบเลื่อนลงในข้อความของคุณได้Box ควบคุม.
ข้อความBox อสังหาริมทรัพย์
ต่อไปนี้เป็นคุณสมบัติทั่วไปที่สุดของ Visual Basic TextBox ควบคุม:
- จัดตำแหน่งข้อความ– สำหรับการตั้งค่าการจัดแนวข้อความ
- แถบเลื่อน– สำหรับเพิ่มแถบเลื่อนทั้งแนวตั้งและแนวนอน
- มัลติไลน์– เพื่อตั้งค่าข้อความBox ควบคุมเพื่อให้มีหลายบรรทัด
- MaxLength– สำหรับระบุจำนวนอักขระสูงสุดในข้อความBox การควบคุมจะยอมรับ
- ดัชนี– สำหรับการระบุดัชนีของอาร์เรย์ควบคุม
- เปิดใช้งาน– สำหรับการเปิดใช้งานการควบคุมกล่องข้อความ
- อ่านเท่านั้น– หากตั้งค่าเป็นจริง คุณจะสามารถใช้ข้อความได้Box หากตั้งค่า Control เป็น false คุณจะไม่สามารถใช้ Text ได้Box ควบคุม.
- การเลือกStart– สำหรับการตั้งค่าหรือรับจุดเริ่มต้นสำหรับข้อความBox ควบคุม.
- การเลือกความยาว– สำหรับตั้งค่าหรือรับจำนวนตัวอักษรที่เลือกไว้ในข้อความBox ควบคุม.
- ข้อความที่เลือก– ส่งคืนข้อความBox การควบคุมที่เลือกอยู่ในปัจจุบัน
ข้อความBox อีเวนต์
วัตถุประสงค์ของกิจกรรมคือเพื่อสร้างข้อความBox การควบคุมตอบสนองต่อการกระทำของผู้ใช้ เช่น การคลิก การดับเบิลคลิก หรือการเปลี่ยนแปลงการจัดตำแหน่งข้อความ ต่อไปนี้คือเหตุการณ์ทั่วไปสำหรับข้อความBox ควบคุม:
- เปลี่ยนขนาดอัตโนมัติแล้ว– เกิดจากการเปลี่ยนแปลงคุณสมบัติ AutoSize
- อ่านอย่างเดียวเปลี่ยนแปลงแล้ว– ทริกเกอร์โดยการเปลี่ยนแปลงค่าคุณสมบัติ ReadOnly
- คลิก– เกิดขึ้นจากการคลิกที่ข้อความBox ควบคุม.
วิธีการสร้างข้อความBox
ทำตามขั้นตอนเหล่านี้เพื่อเพิ่มข้อความแรกของคุณBox ควบคุมไปยัง Windows สร้างและแสดงข้อความทักทายในระหว่างการทำงาน
ขั้นตอนที่ 1) เพื่อสร้างข้อความBoxให้ลากข้อความBox ควบคุมจากกล่องเครื่องมือเข้าไปใน Windows รูปแบบ:
ขั้นตอน 2)
- คลิกข้อความBox ควบคุมที่คุณได้เพิ่มลงในแบบฟอร์ม
- ย้ายไปที่ส่วนคุณสมบัติที่อยู่ที่ด้านซ้ายล่างของหน้าจอ เปลี่ยนชื่อกล่องข้อความจากข้อความBox1 ถึง HelloTextBox:
ขั้นตอนที่ 3) เพิ่มโค้ดต่อไปนี้เพื่อเพิ่มข้อความลงในตัวควบคุม:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'Add text to the control
HelloTextBox.Text = "Hello. Welcome to Guru99!"
End Sub
ขั้นตอนที่ 4) ตอนนี้คุณสามารถรันโค้ดได้โดยคลิกปุ่ม Start ที่แถบด้านบน:
ขั้นตอนที่ 5) คุณควรได้รับแบบฟอร์มดังต่อไปนี้:
นี่คือภาพหน้าจอของโค้ดที่สมบูรณ์สำหรับรายการด้านบน:
คำอธิบายของรหัส:
- สร้างคลาสสาธารณะชื่อ Form1
- การสร้างขั้นตอนย่อยชื่อ Form1_Load มันจะถูกเรียกเมื่อมีการโหลดแบบฟอร์ม
- ข้อความแสดงความคิดเห็น คอมไพเลอร์ VB.Net จะข้ามส่วนนี้ไป
- สิ้นสุดขั้นตอนย่อย
- จบชั้นเรียน
คุณสมบัติ PasswordChar
บางครั้ง คุณอาจต้องการใช้กล่องข้อความสำหรับพิมพ์ping รหัสผ่าน หมายความว่าสิ่งใดก็ตามที่พิมพ์ลงในช่องข้อความนั้นจะต้องเป็นความลับ ซึ่งสามารถทำได้ด้วย VB.Net- ก็สามารถทำได้โดยใช้ รหัสผ่าน คุณสมบัติที่ช่วยให้เราใช้ตัวละครใดก็ได้ที่คุณต้องการ ให้เราสาธิตสิ่งนี้โดยใช้ตัวอย่าง:
เริ่มต้นด้วยการสร้างโครงการใหม่ ลากสองข้อความBox ตัวควบคุม ป้ายชื่อสองป้าย และปุ่มหนึ่งปุ่มลงในแบบฟอร์ม เปลี่ยนข้อความบนป้ายชื่อสองป้ายและปุ่มเป็นดังต่อไปนี้:
คลิกกล่องข้อความข้างป้ายชื่อผู้ใช้ แล้วไปที่ส่วนคุณสมบัติที่ด้านซ้ายล่างของหน้าต่าง ตั้งชื่อเป็น UsernameField
ทำเช่นเดียวกันกับข้อความBox การควบคุมถัดจากป้ายกำกับรหัสผ่าน โดยตั้งชื่อว่า PasswordField
ตอนนี้คุณควรสร้างข้อความ PasswordFieldBox ตัวควบคุมจะแสดง * สำหรับแต่ละอักขระที่พิมพ์ลงไป เพิ่มโค้ดต่อไปนี้:
Private Sub PasswordField_TextChanged(sender As Object, e As EventArgs) Handles PasswordField.TextChanged
PasswordField.PasswordChar = "*"
End Sub
ตอนนี้ให้รันโค้ดโดยคลิกปุ่มเริ่ม แบบฟอร์มจะปรากฏขึ้น
พิมพ์ชื่อผู้ใช้และรหัสผ่านแล้วสังเกตสิ่งที่เกิดขึ้น คุณจะเห็นสิ่งต่อไปนี้:
ชื่อผู้ใช้ปรากฏขึ้นแต่รหัสผ่านถูกซ่อนไว้ นี่คือรหัสสำหรับด้านบน:
คำอธิบายของรหัส:
- การสร้างคลาสชื่อ Form1
- สร้างซับโปรซีเดอร์ชื่อ PasswordField_TextChanged() ซึ่งจะถูกเรียกเมื่อฟอร์มโหลดเสร็จ
- การใช้คุณสมบัติ PasswordChar เพื่อแสดง * เมื่อผู้ใช้พิมพ์รหัสผ่าน
- สิ้นสุดขั้นตอนย่อย
- จบชั้นเรียน
ขึ้นบรรทัดใหม่ในข้อความBox
โดยค่าเริ่มต้น คุณสามารถสร้างข้อความในกล่องข้อความได้เพียงบรรทัดเดียว มีสองวิธีในการทำเช่นนั้น มาอธิบายกัน
ลากและวางข้อความBox ส่วนควบคุมสำหรับแบบฟอร์มของคุณ ตั้งชื่อส่วนควบคุมนั้น Guruยินดีต้อนรับ
คลิกที่ตัวควบคุมกล่องข้อความอีกครั้งและเลื่อนเคอร์เซอร์เมาส์ไปที่ส่วนคุณสมบัติ เปลี่ยนค่าของคุณสมบัติหลายบรรทัดเป็น True
อีกทางเลือกหนึ่ง คุณสามารถตั้งค่าคุณสมบัติ Multiline เป็น true ในโค้ดของคุณได้ดังนี้:
Guruยินดีต้อนรับ.หลายบรรทัด = จริง
เพิ่มรหัสต่อไปนี้:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
GuruWelcome.Multiline = True
GuruWelcome.Text = "Line 1"
GuruWelcome.Text = GuruWelcome.Text & ControlChars.NewLine & "Line 2"
End Sub
เมื่อดำเนินการ ข้อความทั้งสองบรรทัดจะถูกแยกออกจากกัน
คำอธิบายของ Code:
- การสร้างคลาสชื่อ Form1
- สร้างซับรูทีนชื่อ Form1_Load()
- ตั้งค่าคุณสมบัติ Multiline เป็น True ช่องข้อความจะสามารถแสดงข้อความได้มากกว่าหนึ่งบรรทัด
- การเพิ่มบรรทัดข้อความแรกลงในกล่องข้อความ
- เพิ่มข้อความบรรทัดที่สองลงในกล่องข้อความ คุณสมบัติ ControlChars.NewLine ช่วยให้เราแบ่งข้อความออกเป็นสองบรรทัด
- สิ้นสุดกิจวัตรย่อย
- จบชั้นเรียน
การดึงค่าจำนวนเต็ม
VB.Net ถือว่าทุกอย่างเป็นสตริง นั่นหมายความว่าคุณอ่านค่าจำนวนเต็มจากกล่องข้อความในรูปแบบสตริง จากนั้นจึงแปลงสตริงนั้นกลับเป็นจำนวนเต็ม ซึ่งโดยปกติจะทำได้โดยใช้เมธอด Integer.Parse()
ในการสาธิต ให้สร้างตัวควบคุมกล่องข้อความใหม่พร้อมปุ่ม ตั้งชื่อกล่องข้อความว่า age ตั้งชื่อปุ่มว่า Button1 คุณควรมีอินเทอร์เฟซต่อไปนี้:
เพิ่มรหัสต่อไปนี้:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim x As Integer
x = Integer.Parse(age.Text)
MessageBox.Show(x)
รันโค้ดและป้อนอายุของคุณลงในกล่องข้อความ คลิกปุ่มแสดงอายุ คุณจะเห็นสิ่งต่อไปนี้:
ค่าที่คุณป้อนจะถูกส่งกลับในข้อความBox.
คำอธิบายของ Code:
- การสร้างคลาสชื่อ Form1
- การสร้างขั้นตอนย่อยชื่อ Button1_Click มันจะถูกเรียกเมื่อมีการคลิกปุ่ม
- การกำหนดตัวแปรจำนวนเต็มชื่อ x
- การแปลงค่าที่อ่านจากกล่องข้อความที่ชื่ออายุให้เป็นจำนวนเต็ม
- การแสดงค่าที่แปลงในขั้นตอนข้างต้นในข้อความBox.
- สิ้นสุดขั้นตอนย่อย
ข้อความแบบอ่านอย่างเดียวBox
คุณสามารถทำให้กล่องข้อความอ่านอย่างเดียวได้ ซึ่งหมายความว่าผู้ใช้จะไม่สามารถแก้ไขค่าที่แสดงภายในกล่องข้อความได้ ในการทำเช่นนั้น คุณต้องตั้งค่าคุณสมบัติ ReadOnly เป็น True เพื่อสาธิตวิธีการนี้ ให้สร้างกล่องข้อความใหม่และตั้งชื่อว่า guru99 จากนั้นเพิ่มโค้ดต่อไปนี้:
Private Sub guru99_TextChanged(sender As Object, e As EventArgs) Handles guru99.TextChanged
guru99.Text = "welcome to Guru99"
guru99.ReadOnly = True
End Sub
โค้ดควรส่งคืนสิ่งต่อไปนี้:
นี่คือรหัส:
คำอธิบายของ Code:
- การสร้างคลาสชื่อ Form1
- การสร้างรูทีนย่อยชื่อ guru99_TextChanged
- การเพิ่มข้อความลงในกล่องข้อความที่ชื่อ guru99
- ตั้งค่าคุณสมบัติ ReadOnly ของกล่องข้อความเป็น True ซึ่งจะทำให้ข้อความในกล่องข้อความไม่สามารถแก้ไขได้
- สิ้นสุดขั้นตอนย่อย
- จบชั้นเรียน
คุณสมบัติความยาวสูงสุด
คุณสมบัติ MaxLength ช่วยให้คุณกำหนดจำนวนคำหรืออักขระสูงสุดที่กล่องข้อความจะอนุญาตได้ เพื่อแสดงสิ่งนี้ ให้สร้าง TextBox ควบคุมและตั้งชื่อให้ว่า fullName จากนั้นเพิ่มโค้ดต่อไปนี้:
Private Sub fullName_TextChanged(sender As Object, e As EventArgs) Handles fullName.TextChanged
fullName.MaxLength = 8
End Sub
เรียกใช้โค้ดแล้วลองพิมพ์ชื่อเต็มของคุณ คุณจะไม่สามารถพิมพ์เกิน 8 ตัวอักษร โดยมีช่องว่างรวมอยู่ด้วย:
รหัสสินค้า:
Code คำอธิบาย:
- การสร้างคลาสชื่อ Form1
- การสร้างขั้นตอนย่อยชื่อ fullName_TextChanged
- การทำให้ช่องข้อความ fullName ยอมรับอักขระได้สูงสุด 8 ตัวเท่านั้น
- สิ้นสุดขั้นตอนย่อย
- จบชั้นเรียน




















