Tên bài viết: IV-Viết CodeTác giả: gatoi_itCấp độ bài viết: Bình thường
Tóm tắt: Học những dòng code cơ bản đầu tiên của Visual Basic .NET
1 - Variables(Biến)Variable(Biến) là gì?Với Visual Basic, và hầu hết các ngôn ngữ lập trình khác, bạn muốn chứa điều gì đó vào bộ nhớ của máy tính, và thao tác với chúng. Giả sử bạn đưa vào 2 số và cần "nói" cho VB thực hiện việc đó. Bạn sẽ dùng biến để làm việc này.
Các biến được lưu trữ trong bộ nhớ của máy tính. Cứ tưởng tượng như: một biến là một chiếc hộp giấy. Bây giờ bạn ở trong một phòng lớn, và trong phòng này có rất nhiều hộp giấy. Để đưa 2 số vào, viết số vào trong mẩu giấy và cất nó vào trong hộp giấy, viết số thứ hai và lại cất nó vào trong hộp giấy khác.
Bạn lại có hơn 1000 hộp giấy chứa các mẩu giấy có các con số

. Để tiện ghi nhớ chúng, hãy dán các nhãn lên các hộp giấy đó. Dán nhãn "number1" vào hộp 1, "number2" vào hộp 2.
Chúng ta có 2 bộ nhớ (căn phòng và hộp giấy), và đưa cho chúng những con số (2 biến). Ta cũng thêm những tên biến (mẩu giấy dán) vì vậy ta có thể nhớ chúng ở đâu.
Hãy khảo sát đoạn mã:
Mã: Chọn hết
- Dim number1 As Integer
- Dim number 2 As Integer
-
- number1 = 3
- number2 = 5
-
-
Đoạn mã trên là ở trong VB NET. Đây là cách để VB cài đặt(hoặc khai báo) biến.
Hãy tìm hiểu cách khai báo một biến
Dim Viết tắt của Dimension. Nó là một dạng của biến. Bạn khai báo(hay "nói" với VB) cài đặt một biến bằng từ khóa này. Chúng ta sẽ học các dạng khác của biến sau. Nhưng hãy nhớ khai báo một biến bằng từ khóa Dim
number1Giống như cái hộp giấy và giấy dán. Đây là tên một biến. Sau từ khóa Dim, VB xem tên của biến là gì. Bạn có thể đặt các tên biến mà bạn muốn, nhưng sẽ bị giới hạn bởi các ký tự. Hãy tập đưa các tên biến khác nhau để thật dễ hiểu.
As Integer Chúng ta nói với VB rằng biến này là một con số(nguyên). Ta sẽ gặp lại Integer sau.
Number1 = 3 Dấu = không phải để so sánh bằng. Dấu bằng để gán giá trị. Nói cách khác, đây là đưa dữ liệu vào biến. Ta nói với VB nhận giá trị 3 cho biến number1. Bạn hãy hình dung như lúc trước là đưa mẩu giấy vào hộp giấy đó.
2 - Đưa code vào formĐể dễ hiểu hơn, hãy thực hiện như sau:
- Tạo một project mới, đặt tên tùy ý bạn.
- Thêm 1 Button lên form bằng cách nhấn công cụ Button trên Toolbox sau đó rê chuột lên form và vẽ button.
Bằng cách trên bạn cũng có thể thực hiện với các control khác
- Thay đổi thuộc tính Text của Button trên thành "Add two numbers"
Tiếp tục thêm một Textbox nữa lên form. Bố trí sao cho form sẽ như sau:

Thay đổi thuộc tính Font của Button thành font chữ mà bạn thích, hãy làm việc này với cả Textbox nhé!
Để mở cửa sổ viết code, hãy nhấn kép chuột vào Button trên form, cửa sổ code sẽ xuất hiện như sau:

Chúng ta hãy khảo sát đoạn mã:
Mã: Chọn hết
- Private Sub Button1_Click(ByVal sender As System.Object, _
- ByVal e As System.EventArgs) _
- Handles Button1.Click
-
- End Sub
-
-
Hãy chú ý tới kí tự gạch dưới (_), nó được sử dụng để xuống dòng khi một dòng code quá dài. Bạn cũng có thể sử dụng nó để xuống dòng nếu dòng code bạn viết quá dài hoặc để cho dễ nhìn.
Private Private là từ khóa giúp chỉ chương trình của bạn chỉ thấy code của button này.
Sub Viết tắt của Subroutine. Từ khóa "Sub" nói với VB rằng có code bên dưới, và nó cần phải được biên dịch
Button1 Đây là tên button của chúng ta. Bạn sẽ nghĩ rằng chúng ta đã xóa "Button1" khi thay đổi thuộc tính Text, thế nhưng tại sao VB vẫn gọi được Button1? Đây là thuộc tính quan trọng nhất của Control gọi là Name. Nếu như bạn thay đổi thuộc tính Name, VB sẽ đổi tên button này cho bạn.
_Click ( ) Đây được gọi là một Event(sự kiện). Nói cách khác, khi button được click, sự kiện Click được xảy ra, và đoạn code mà bạn viết sẽ được thi hành.
End Sub Phần kết thúc ở đây. Nó đánh dấu đoạn code được kết thúc.
Đừng lo nếu bạn không hiểu hết những phần trên. Tiếp tục học bạn sẽ hiểu ra thôi.
Quay trở lại project mà ta đang làm. Hãy nhấn con trỏ vào khoảng trống bên dưới dòng Private Sub Button1_Click(....)
Hãy gõ đoạn mã sau vào:
Mã: Chọn hết
- Dim number1 As Integer
- Dim number 2 As Integer
- Dim answer As Integer
-
- number1 = 3
- number2 = 5
-
- answer = number1 + number2
-
- MsgBox answer
-
-
Sau khi gõ xong, cửa sổ code sẽ như sau:

Hãy ghi project lại và vào Debug > Start hoặc nhấn F5 để chạy thử. Chương trình được chạy. Nhấn vào button, và bạn thấy như sau:

Dừng chương trình lại. Nếu bạn không thấy cửa sổ code đâu cả thì hãy nhấn vào tab Form1.vb phía trên:

Nhấn vào tab "Form1.vb [Design]" để xem form.
Hãy xem lại đoạn code:
- Đầu tiên, chúng ta khai báo từ khóa Dim để nói với VB khai báo biến.
- Tiếp theo chúng ta đưa tên biến(number1)
- Tiếp đến là nói với VB rằng biến là một số nguyên (As Integer)
- Hai biến cũng được làm tương tự là number2 và answer
Sau khi đã khai báo biến, chúng ta lại làm công việc sau:
- Nói với VB biến đầu tiên nhận giá trị 3, và biến thứ hai nhận giá trị 5. Để đưa giá trị vào biến, ta dùng dấu bằng(=). Nhưng đây không phải là so sánh bằng mà là đưa giá trị 3 vào biến number1.
- Tiếp theo, với toán tử cộng(+) chúng ta cộng 2 biến number1+number2 và đưa kết quả này vào biến answer:
- Cuối cùng chúng ta dùng Msgbox để hiển thị kết quả của biến answer.
Msgbox giúp bạn có thể hiện lên những câu thông báo tới người dùng, chúng ta sẽ học kĩ hơn trong các bài sau.
Bây giờ hãy thực hành tiếp. Xóa dòng "MsgBox answer" đi. Gõ vào Textbox1 và gõ dấu chấm(.) vào. Bạn có thể thấy một danh sách hiện ra. Đây là danh sách của các thuộc tính và phương thức mà Textbox sử dụng.

Cuộn xuống để tìm trong danh sách từ "Text". Nháy kép chuột lên thuộc tính "Text" đó, danh sách bị biến mất

Ngoài cách này ra bạn có thể gõ luôn từ Text đằng sau Textbox1 như thế sẽ nhanh hơn.
Để nhận một giá trị cho thuộc tính Text hãy gõ dấu = vào. Ở đây ta muốn hiện kết quả của biến answer lên Textbox. Vì thế ta viết:
Chạy thử chương trình, nhấn Button ở trên Form, bạn sẽ thấy số 8 được hiện lên trong Textbox.
3 - Biến kiểu String(chuỗi)Chúng ta đã được học về biến kiểu Integer(số nguyên) trong phần trên. Bây giờ chúng ta hãy tìm hiểu về biến String(chuỗi)
String là gì? Nó là một dòng chữ.

Để tạo ra một biến kiểu String, hãy thêm As String sau tên biến. Ví dụ muốn tạo ra 2 biến FirstName và LastName kiểu String ta có thể viết như sau:
Mã: Chọn hết
- Dim FirstName As String
- Dim LastName As String
Để gán cho chúng các giá trị ta cũng sử dụng dấu bằng(=). VD:
Mã: Chọn hết
- FirstName = "Only"
- LastName = "Nguyen"
-
Để dễ hiểu hơn hãy quay trở lại project vừa rồi. Thêm một Button nữa vào Form và đặt thuộc tính Text là "String Test". Bố trí để form như sau:

Nháy kép chuột vào button mới đó và thêm đoạn code sau vào:
Mã: Chọn hết
- Dim FirstName As String
- Dim LastName As String
- Dim FullName As String
-
- FirstName = "Only"
- LastName = "Nguyen"
-
- FullName = FirstName & LastName
-
- Textbox1.Text = FullName
-
Hãy tìm hiểu dòng code này:
Mã: Chọn hết
- FullName = FirstName & LastName
Nó giúp bạn kết hợp 2 biến String lại với nhau. Chúng ta dùng ký tự & để kết hợp chúng lại. Hãy nhớ dùng ký tự & để kết hợp các biến String lại với nhau. Biến chứa sự kết hợp này là biến FullName.
Hãy thử chạy chương trình, Khi bạn nhấn vào Button "String Test" thì Textbox sẽ hiện chữ "OnlyNguyen". Chúng lại được đặt sát nhau mà không có khoảng cách. Để giải quyết vấn đề này hãy sửa dòng FullName = FirstName & LastName thành:
Mã: Chọn hết
- FullName = FirstName & " " & LastName
4 - Gán giá trị của Textbox vào biếnBạn có thể lấy giá trị mà người dùng nhập vào Textbox để gán cho biến. Để dễ hiểu hơn hãy mở lại project vừa rồi và làm như sau:
- Thêm 1 Textbox mới vào form
- Bố trí lại sao cho hợp lí
- Tìm thuộc tính Name trong bảng Properties và thay đổi như sau:
+ Textbox1 thành txtFirstName
+ Textbox2 thành txtLastName
Hãy chuyển sang tab Form1.vb hoặc nhấn F7, bạn sẽ thấy dòng mã sau bị gạch chân:

Lỗi này xảy ra là do VB không tìm thấy Textbox1 đâu cả. Hãy sửa dòng mã đó thành:
Mã: Chọn hết
- txtFirstName.Text = FullName
Chạy chương trình, bạn sẽ không thấy lỗi.
Tiếp tục, tìm đến dòng mã:
Mã: Chọn hết
- FirstName = "Bill"
- LastName = "Gates"
-
Sửa thành:
Mã: Chọn hết
- FirstName = txtFirstName.Text
- LastName = txtLastName.Text
-
Hãy nhớ dấu bằng(=) thực hiện công việc sau: Phần ở bên trái dấu bằng được gán giá trị mà ở bên phải có. Tạo thêm một biến WholeName và gán cho nó với giá trị FirstName & " " & LastName, dùng Msgbox để hiển thị biến WholeName lên. Đoạn code sẽ như sau:
Mã: Chọn hết
- Dim FirstName As String
- Dim LastName As String
- Dim WholeName As String
-
- FirstName = txtFirstName.Text
- LastName = txtLastName.Text
-
- WholeName = FirstName & " " & LastName
-
- MsgBox(WholeName)
-
-
Chạy chương trình, nhập chữ "Bill" vào textbox thứ nhất, "Gates" vào textbox thứ hai bạn sẽ có kết quả sau:
5 - Các kiểu biến khácGiới hạn của các kiểu biến khác như sau:
Số nguyênByte 0 tới 255
Short -32,768 tới 32,768
Integer -2,147,483,648 tới 2,147,483,647
Long -9,223,372,036,854,775,808 tới 9,223,372,036,854,775,808
Số thực Single Cho số âm: -3.402823 x 10-38 tới -1.401298 x 10-45.
Cho số dương: 1.401298 x 10-45 tới 3.402823 x 1038
Double Cho số âm: -1.79769313486231 x 10308 tới -4.94065645841247 x 10-324.
Cho số dương: 4.94065645841247 x 10-324 tới 1.79769313486231 x 10308.
Chữ và hàng chữ (hay câu)Char Dùng lưu trữ từng chữ một.
StringDùng lưu trữ một hàng chữ hay cả nguyên một cuốn sách.
Các loại đơn giản khácBooleanTrue hoặc False
DateTừ ngày 1 tháng Giêng năm 100 tới ngày 31 tháng Chạp năm 9999
Loại dữ kiện có khả năng tính toán năm nhuần. Nếu ta cộng 1 ngày vào biến số lưu trữ ngày 28/02/2000, ta sẽ có 29/02/2000 nhưng nếu cộng cho ngày 28/02/2001, ta lại có 01/03/2001.
Bạn nên nhớ hãy sử dụng các kiểu biến cho phù hợp vì các kiểu có giới hạn lớn thường tồn bộ nhớ rất nhiều.