Điều khiển Textbox

Một phần của tài liệu Giáo trình tin học Lập trình với Microsoft Visual Basic 6.0 (Trang 61 - 64)

2. Một số điều khiển cơ bản

2.3Điều khiển Textbox

Textbox là một trong những điều khiển được dùng khá rộng rãi. Nó thường

được sử dụng vào việc hiển thị, nhập và sửa dữ liệu dạng văn bản trên các ô dữ

liệu đặt trên form. Hình dưới đây minh họa việc sử dụng Textbox trên một form: Các đối tượng Label

Đặc biệt, đối tượng textbox có thể hiển thị trên được nhiều dòng và như hộp

Ghi chú form trên. Để làm được như vậy cần thiết lập thuộc tắnh Multiline =

True và thuộc tắnh ScrollBar (để tùy chọn thanh cuộn cho Textbox) một cách phù hợp.

Giá trị trên ô TextBox được thể hiện qua thuộc tắnh Text. Thông thường, VB sẽ ngầm hiểu giá trị các ô textbox là kiểu xâu ký tự (Text) nên lập trình viên phải hết sức chú ý tới việc sử dụng phép tắnh cộng Ề+Ể kiểu số, vì máy tắnh sẽ hiểu là phép ghép xâu (cộng hai xâu). Khi đó có thể sử dụng hàm Val (hàm chuyển đổi xâu ậ số) như sau:

Dim num As Double

num = Val(Text1.Text) + Val(Text2.Text)

‘Viết như thế này sẽ bị sai kết quả

num = Text1.Text + Text2.Text

Tuy nhiên trong VB nếu chỉ viết nguyên tên đối tượng Textbox (vắ dụ Text1 chẳng hạn), máy tắnh cũng hiểu là lấy giá trị của thuộc tắnh Text của đối tượng này. Tức là:

‘Lệnh

num = Text1.Text + Text2.Text

‘cũng tương đương với lệnh

num = Text1 + Text2

Khuyến cáo:

Chúng tôi khuyến cáo không nên viết tắt như vậy, sẽ tạo thành một thói quen không tốt khi sử dụng những công cụ lập trình chuyên nghiệp sau này.

Sự kiện của Textbox rất nhiều, ởđây sẽ giới thiệu 2 sự kiện hay được sử dụng nhất với Textbox:

Sự kiện Validate

Một sự kiện rất quan trọng trong việc kiểm tra tắnh đúng đắn dữ liệu khi nhập vào một điều khiển. Vắ dụ sau đây minh họa điều đó:

Yêu cầu tạo form cho phép nhập vào Họ tên và Tuổi như sau:

Trong đó ô Họ tên không được để trắng, ô Tuổi phải nhập vào một số. Giả sử

thuộc tắnh Name (tên) của ô Họ tên là txtHoten, ô Tuổi là txtTuoi. Khi đó mã lệnh để kiểm tra tắnh đúng đắn 2 ô Textbox trên là 2 thủ tục đáp ứng sự kiện

Validate như sau:

'kiểm tra tắnh đúng đắn ô Họ tên '

Private Sub txtHoten_Validate(Cancel As Boolean) If txtHoten = "" Then

Cancel = True

MsgBox "Họ tên không được để trắng !" End If

End Sub

'kiểm tra tắnh đúng đắn cho ô nhập Tuổi ' (adsbygoogle = window.adsbygoogle || []).push({});

Private Sub txtTuoi_Validate(Cancel As Boolean) If Not IsNumeric(txtTuoi) Then

Cancel = True

End If End Sub

Sự kiện LostFocus

Sự kiện này thường dùng khi dịch điểm Tab qua đối tượng vừa làm việc. Trong vắ dụ về Textbox, sẽ trình bày vắ dụ về tách lấy Tên ngay sau khi Nhập xong dữ liệu cho ô Họ tên (có Name là txtHoten). Vắ dụ này sử dụng đến hàm GetTen, toàn bộ mã lệnh như sau:

Private Sub txtHoten_LostFocus()

Msgbox "Tên vừa nhập là : " + GetTen(txtHoten) End Sub

Function GetTen(st As String) As String Dim pos As Integer

pos = 1

If InStr(pos, Trim(st), " ") = 0 Then GetTen = st

Exit Function End If

While InStr(pos + 1, Trim(st), " ") > 0 pos = InStr(pos + 1, Trim(st), " ") Wend

GetTen = Trim(Mid(st, pos)) End Function

Một phần của tài liệu Giáo trình tin học Lập trình với Microsoft Visual Basic 6.0 (Trang 61 - 64)