Bạn có thể chọn để viết chương trình bằng một trong số các ngôn ngữ lập trình dựa trên khả năng của ngôn ngữ và nhu cầu của bạn.. Hộp công cụ hiển thị tất cả mọi thứ khác nhau mà bạn có
Trang 1z
X^ ]W
Trang 2CHỈ DẪN CHO KHÓA HỌC 4
1 Đối tượng 4
2 Kỹ năng cần có 4
3 Trang thiết bị và phần mềm 4
4 Thời lượng học 4
5 Mục tiêu của khóa học 5
BÀI 1 KHÁI NIỆM VÀ QUY TẮC 6
1 Khái niệm 6
2 Các bước xây dựng chương trình 6
3 Lựa chọn ngôn ngữ lập trình 7
4 Cú pháp Visual Basic.NET 8
5 Bài kiểm tra 8
BÀI 2 VISUAL STUDIO NET VÀ IDE 9
1 Giới thiệu Visual Studio.NET 9
2 Khởi động Visual Studio 10
3 My Profile 11
4 Tạo một dự án mới 11
5 Cửa sổ dự án mới 12
6 Cửa sổ thiết kế biểu mấu (Form) 13
7 Cửa sổ hộp công cụ (Toolbox) 13
8 Di chuyển và thay đổi kích thước nút lệnh 14
9 Thêm mã cho nút lệnh 14
10 Dịch chương trình 15
11 Dịch thành công 15
12 Dịch có lỗi 16
13 Bắt đầu chương trình của bạn 17
14 Hiển thị hộp thông báo 17
15 Cửa sổ Xuất chương trình - Output 18
16 Lưu chương trình của bạn 18
17 Các tệp tin và thư mục chương trình 18
18 Bài kiểm tra 19
BÀI 3 GIẢ MÃ LỆNH 20
1 Các kiểu đoạn mã lệnh 20
2 Giả mã lệnh là gì? 20
3 Chú thích mã lệnh 22
4 Giả mã lệnh được dùng với mục đích chú thích 23
5 Thụt lề và khoảng trắng 23
6 Bài kiểm tra 24
BÀI 4 BIỂU MẪU - FORM 25
1 Các ứng dụng Windows 25
2 Thiết kế form 25
3 Sử dụng các biểu mẫu (form) 26
4 Các thuộc tính của form 27
5 Điều khiển và thuộc tính của form 28
5.1 Các nhãn (Labels) 28
5.2 Hộp văn bản (TextBox) 29
5.3 Nút lựa chọn (Radio Button) 29
5.4 Ô đánh dấu (CheckBox) 30
5.5 Hộp danh sách đổ xuống (ComboBox) 30
Trang 35.6 Nút Lệnh (Command Button) 30
6 Kích hoạt sự kiện 32
7 Hộp thông báo (MessageBoxes) 33
8 Bài kiểm tra 34
BÀI 5 CÁC THUỘC TÍNH VÀ PHƯƠNG PHÁP 35
1 Mã lệnh bắt đầu ở đâu 35
2 Đọc thuộc tính bằng mã lệnh 35
3 Gán thuộc tính bằng mã lệnh 37
4 IntelliSense và dấu chấm 38
5 Phương thức 40
6 Gọi phương thức bằng mã lệnh 41
7 Bài kiểm tra 42
BÀI 6 GÁN VÀ BIẾN 43
1 Lệnh Gán 43
2 Kiểu dữ liệu 43
3 Các kiểu dữ liệu cơ bản 44
4 Biến là gì? 45
5 Tại sao sử dụng biến? 45
6 Khai báo biến 46
7 Khai báo biến ở đâu? 46
8 Khởi tạo biến 47
9 Sử dụng biến 48
10 Tăng tốc sử dụng biến 49
11 Các kiểu biến khác 51
12 Bài kiểm tra 52
BÀI 7 TOÁN TỬ 53
1 Toán tử 53
2 Toán tử số học 53
3 Toán tử chuỗi 54
4 Toán tử Not 54
5 Trong các đoạn lệnh gán 54
6 Hoạt động của Toán tử 55
7 Toán tử so sánh 56
8 Hoạt động của toán tử Not và toán tử ghép chuỗi 56
9 Tìm lỗi 57
10 Chạy từng dòng mã lệnh 58
11 Bài kiểm tra 61
BÀI 8 CÂU LỆNH IF ĐƠN GIẢN 62
1 Ra Quyết định 62
2 Lô gíc Boolean 62
3 Toán tử Lô gíc 62
4 Toán tử so sánh 64
5 Mã lệnh điều kiện 65
6 Lệnh If Then 66
7 Sử dụng nhiều Lệnh If 68
8 Sử dụng nhiều điều kiện 68
9 Nhiều lựa chọn 69
10 Sử dụng toán tử lô gíc trong mã lệnh 70
11 Bài kiểm tra 71
Trang 4BÀI 9 CÂU LỆNH IF PHỨC TẠP 72
1 Lệnh If…Then mở rộng 72
2 Lệnh If…Then lồng nhau 72
3 Điều kiện ngược lại 74
4 If…Then…Else 75
5 Chế độ chạy từng lệnh trong lệnh If 76
6 Bài kiểm tra 78
BÀI 10 VÒNG LẶP XÁC ĐỊNH 79
1 Vòng Lặp 79
2 For…Next 79
3 Chạy từng lệnh một trong lệnh For…Next 80
4 Bài toán cộng 1000 82
5 Đổ rác 83
6 Vòng lặp trong vòng lặp 84
7 Thoát khỏi vòng lặp - biển Exit 84
8 Bài kiểm tra 86
BÀI 11 CÁC VÒNG LẶP KHÔNG XÁC ĐỊNH 87
1 Vòng lặp không xác định 87
2 Vòng lặp Do While…Loop 87
3 Chạy lệnh Do While…Loop trong chế độ gỡ lỗi 88
4 Vòng lặp Do Until…Loop 90
5 Hoạt động của lệnh lặp 91
6 Dạng khác của lệnh lặp 93
7 Lệnh Exit Do 94
8 Bài kiểm tra 95
BÀI 12 HÀM 96
1 Thủ tục là gì? 96
2 Viết thủ tục của bạn 96
3 Gọi thủ tục của bạn 97
4 Viết và gọi thủ tục có tham số 98
5 Viết hàm của bạn 100
6 Gọi Hàm 101
7 Các thủ tục và hàm có sẵn 102
8 Một số hàm xử lý chuỗi 102
9 Bộ sinh số ngẫu nhiên 104
10 Các hàm chuyển đổi kiểu 105
11 Bài kiểm tra 106
Trang 5CHỈ DẪN CHO KHÓA HỌC
1 Đối tượng
Học viên của khóa học là các sinh viên, học sinh trung học và những ai mong muốn:
Hiểu biết nhiều hơn về vai trò của lập trình
Học các khái niệm và cú pháp cơ bản về lập trình
Khám phá các cơ hội nghề nghiệp trong lĩnh vực lập trình
Phát triển nền tảng vững chắc cho đào tạo tiếp về lập trình
2 Kỹ năng cần có
Khóa học này đòi hỏi học sinh phải có các kỹ năng sau:
Cơ bản đã làm quen với việc sử dụng máy tính, chẳng hạn như sử dụng Internet hay ứng dụng xử lý văn bản
Biết sử dụng chuột và bàn phím để sử dụng giao diện của Microsoft Windows®
Có thể thực hiện các thao tác quản lý tệp tin đơn giản như: mở và lưu các tệp tin, tạo các thư mục chứa các tệp tin
3 Trang thiết bị và phần mềm
Microsoft Windows (2000, NT 4 hoặc XP) – khuyến cáo dùng Windows XP
Microsoft Visual Studio 2003 – hiện tại đã có Microsoft Visual Studio 2005
Internet Explorer Version 6.0 trở lên
4 Thời lượng học
Mỗi buổi học cần khoảng 50 phút, tổng thời lượng ước tính là 90 giờ
Trang 65 Mục tiêu của khóa học
Sau khi hoàn thành khóa học này, học viên sẽ có thể:
Mô tả được các ngôn ngữ lập trình khác nhau và khả năng của các ngôn ngữ lập trình
Mô tả lôgíc lập trình thông qua giả mã lệnh
Vẽ biểu đồ lôgíc chương trình
Sử dụng Visual Studio IDE, nhận biết các thành phần IDE và các ngôn ngữ mô tả cơ cấu NET
Xây dựng và chạy một chương trình trên Visual Studio
Nhận biết các phần tử biểu mẫu phổ biến bao gồm các đối tượng biểu mẫu, hộp công
cụ và các sự kiện
Xác định các thuộc tính bằng cách sử dụng cửa sổ thuộc tính và mã lệnh
Xác định các biến
Khai báo các biến chuỗi và các biến nguyên
Tạo các lệnh gán bằng việc sử dụng các toán tử số học đơn giản
Thực hiện việc sửa lỗi đơn giản
Sử dụng cửa sổ Autos
Tạo các lệnh “If” đơn giản và phức tạp bằng ngôn ngữ lập trình Visual Basic và C#
Chạy đoạn mã một số lần nhất định
Tạo các vòng lặp “For”, “Do Until” và “Do While” bằng Visual Basic
Tạo các vòng lặp “For” và “While” bằng ngôn ngữ lập trình C#
Gọi các hàm đã có sẵn
Tự viết và gọi các hàm đó
Trang 7BÀI 1 KHÁI NIỆM VÀ QUY TẮC
1 Khái niệm
Các chương trình được sử dụng để giải quyết các vấn đề và thực hiện các loại việc như: viết thư, tạo các bảng tính và cân đối sổ sách, theo dõi thu chi, quản lý thông tin về khách hàng
Một chương trình máy tính được tạo bởi các dòng mã lệnh viết bằng một ngôn ngữ lập trình giống như tiếng Anh Bạn có thể chọn để viết chương trình bằng một trong số các ngôn ngữ lập trình dựa trên khả năng của ngôn ngữ và nhu cầu của bạn Sau khi bạn viết chương trình, nó được biên dịch thành ngôn ngữ mà máy tính có thể hiểu và thực hiện
Mã lệnh bạn viết quyết định những gì chương trình sẽ làm Mã lệnh xác định điều gì xảy
ra khi bạn nháy chuột vào nút hoặc chọn một mục từ danh sách Mã lệnh bạn cung cấp “tính thông minh” của chương trình… nó quyết định chương trình sẽ làm như thế nào, trong thời gian bao lâu, nó sẽ thực hiện những tính toán gì Bạn có thể viết mã lệnh để giải toán, viết văn bản, trả lời các hành động người dùng, tập hợp dữ liệu hoặc hiển thị thông tin
2 Các bước xây dựng chương trình
nhau như thế nào
hoặc máy chủ
Trang 83 Lựa chọn ngôn ngữ lập trình
Trên 50 năm qua, nhiều ngôn ngữ lập trình đã được phát triển Giống như ngôn ngữ nói, một số ngôn ngữ lập trình không còn được sử dụng nữa Các ngôn ngữ lập trình khác đã được sử dụng 20 hoặc 30 năm
Một ngôn ngữ lập trình mới được xây dựng bằng việc sử dụng các tính năng tốt nhất của một hoặc nhiều ngôn ngữ đang có, và kết hợp chúng để tạo thành một ngôn ngữ mới Các ngôn ngữ lập trình ngày nay phản ảnh các phát triển phần cứng máy tính và sự tiến triển của phần mềm
Các ngôn ngữ lập trình ra đời sớm nhất đã được lập trình theo điều kiện máy tính có thể hiểu Điều này có nghĩa các chương trình chỉ sử dụng các số 1 và 0 Mệt mỏi như thế nào! Rốt cuộc, các chương trình gọi là các trình biên dịch đã được tạo ra để chuyển mã lệnh được viết bằng ngôn ngữ giống tiếng Anh thành các số 1 và 0 mà máy tính có thể hiểu Hầu hết tất
cả các ngôn ngữ lập trình hiện đại đều biên dịch được Chúng được viết bằng ngôn ngữ lập trình giống như tiếng Anh và sau đó được biên dịch, hoặc chuyển đổi thành mã mà máy có thể đọc được
Qua nhiều năm, các ngôn ngữ lập trình khác nhau đã được xây dựng để giải quyết các vấn
đề riêng Ví dụ FORTRAN đã được phát triển để giải quyết một số vấn đề về số và thực hiện tính toán FORTRAN viết tắt từ FORmula TRANslating COBOL đại diện cho ngôn ngữ Common Business-Oriented và đã được phát triển chủ yếu cho các ứng dụng trong thương mại LISP viết tắt từ ListProcessing, được phát triển để khám phá về trí tuệ nhân tạo
Các ngôn ngữ mới được phát triển có một hoặc nhiều lợi thế so với các ngôn ngữ trước Dưới đây là một số ví dụ:
Khi bắt đầu một dự án lập trình bạn cần suy nghĩ về ngôn ngữ nào sẽ sử dụng Ngôn ngữ
đó có tính năng bạn cần không? Nó có dễ dàng lập trình không? Bạn đã biết ngôn ngữ đó chưa? Ngôn ngữ đó đã được cài trên máy tính của bạn chưa?
Ngôn ngữ Visual Basic.NET là một ngôn ngữ lập trình mạnh và dễ sử dụng Nó có cú pháp lệnh tường minh, bộ lệnh phong phú, linh hoạt Hiện tại cộng đồng lập trình viên sử dụng ngôn ngữ Visual Basic.NET rất đông cũng là một yếu tố chủ quan giúp bạn lựa chọn ngôn ngữ này
Trang 94 Cú pháp Visual Basic.NET
Như các ngôn ngữ nói, mỗi ngôn ngữ lập trình có một cú pháp riêng Cú pháp là từ vựng, ngữ pháp, chọn từ và cấu trúc tạo thành ngôn ngữ lập trình Cú pháp định nghĩa các qui tắc viết các dòng lệnh đúng và kết hợp các dòng này thành một chương trình đúng
Việc học một ngôn ngữ lập trình bao gồm việc học cú pháp, cấu trúc và các qui tắc của ngôn ngữ lập trình
Khi bạn học một ngôn ngữ lập trình bạn phải học các cú pháp cũng như là chức năng và khả năng của ngôn ngữ đó Nên nhớ không phải ngôn ngữ lập trình có thể làm mọi thứ, nhưng tất cả các ngôn ngữ lập trình hiện đại có các đặc điểm và tính năng mà bạn mong đợi Khi bạn học lập trình Visual Basic.NET, bạn cần học về các từ dành riêng, cấu trúc và các đối tượng cơ bản tạo thành ngôn ngữ Đầu tiên bạn phải hiểu một số thành phần cú pháp cơ bản của ngôn ngữ
Cú pháp chính trong Visual Basic.NET:
“nguyen van a” và “NGUYEN VAN A” là như nhau
5 Bài kiểm tra
Trang 10BÀI 2 VISUAL STUDIO NET VÀ IDE
1 Giới thiệu Visual Studio.NET
Visual Studio.NET của Microsoft là một công cụ phát triển giúp bạn viết các chương trình bằng một số ngôn ngữ lập trình NET khác nhau Ví dụ, khi bạn thêm các nút vào trong form, Visual Studio.NET thêm một số mã lệnh cho nút này một cách tự động Visual Studio.NET không thể viết tất cả các lệnh cho bạn Nó không biết chương trình của bạn định làm gì Nhưng nó đảm bảo giảm thiểu được số lệnh bạn phải viết và làm giảm thời gian lập trình của bạn
Visual Studio.NET tự động tô màu cho lệnh của bạn phụ thuộc vào ý nghĩa của lệnh Ví như các chú thích luôn luôn có màu xanh lục và các từ khóa có màu xanh da trời, thậm chí các lỗi cú pháp được gạch chân lượn sóng màu đỏ Điều này giúp bạn sớm nhận biết và sửa các lỗi lệnh
Visual Studio.NET giúp bạn tổ chức các lệnh bằng cách sắp xếp chúng vào các tệp riêng biệt Theo cách đó bạn có thể chia các đoạn mã của mình thành các đơn vị chức năng Ví dụ: một tệp tách biệt sẽ lưu trữ mã lệnh cho từng form của bạn Visual Studio.NET cho phép biên dịch và chạy chương trình dễ dàng bằng vài
nháy chuột Bạn có thể sử dụng tiện ích gỡ rối để
tìm các lỗi trong chương trình và hiển thị thông tin
Hơn nữa, Visual Studio.NET cho phép bạn phát
triển các chương trình bằng các ngôn ngữ khác
nhau, đó là các ngôn ngữ NET Bạn sử dụng chung
giao diện Visual Studio.NET quen thuộc cho từng
ngôn ngữ Các ngôn ngữ NET có trong Visual
Trang 112 Khởi động Visual Studio
Để mở Visual Studio:
1 Nháy nút Start
2 Chọn Programs
3 Chọn thư mục Visual Studio.Net 2003
4 Chọn ứng dụng Microsoft Visual Studio.Net 2003
Có một biểu tượng trên Desktop mà tôi có thể sử dụng để mở Visual Studio Sử dụng biểu tượng là cách khởi động nhanh Visual Studio.NET bằng cách nháy đúp chuột lên nó
* IDE Start Page
Màn hình đầu tiên bạn thấy khi mở Visual Studio.NET là trang Start Page Tab Projects sẽ mặc định được chọn Thông thường, bạn thấy một danh sách các dự án đang có Vì lần đầu
tiên bạn sử dụng Visual Studio.NET, nên không có dự
án nào được liệt kê
Nhãn My Profile là nơi bạn tùy chỉnh Visual Studio.NET cho phù hợp với bạn
Nháy tab My Profile để tùy chỉnh nó
Trang 123 My Profile
Đây là nơi bạn chọn bạn kiểu phát triển và đặt các tùy chọn Visual Studio.NET Studio cho mình
1 Chọn Visual Studio Developer từ
danh sách thả xuống Profile
2 Kiểm tra các tùy chọn mặc định
Help Filter: (no filter)
3 Chọn Internal Help để hiển thị
trợ giúp
4 Chọn Show Start Page cho At
Startup setting
5 Chọn tab Projects ở phía trên của
trang Start Page để tiếp tục
4 Tạo một dự án mới
Bây giờ bạn đã hoàn thành việc thiết lập môi
trường Visual Studio.NET, chúng ta sẽ khám phá tab
Projects Bạn có thể hoặc bắt đầu một dự án mới hoặc
mở một dự án đang có từ tab này Bạn sử dụng nút
Open Project ở phía dưới của màn hình Projects để
mở một dự án đang có Sau khi bạn tạo một dự án đầu
tiên của mình, nó sẽ xuất hiện trong danh sách các dự
án đang có Để mở một dự án đang có, chọn dự án từ
danh sách và nháy vào nút Open Project
Tôi chỉ cho bạn cách tạo dự án cho chương trình
Hello World Tiếp đó chúng ta sẽ viết chương trình
Hello World là chương trình đầu tiên được viết bởi
nhiều lập trình viên nhất Mục tiêu là tạo một hộp
thông điệp nói “Hello World”
1 Nháy nút New Project để tạo một dự án mới
Cửa sổ hộp thoại dự án mới được mở
Trang 135 Cửa sổ dự án mới
Trên nhãn New Projects, bạn chú ý rằng trong khung bên trái trên có nhãn Project Types,
ở đây có nhiều kiểu dự án
3 Nhập HelloWorld vào khung Name cho dự
án (Không có dấu cách trong tên tệp)
4 Chọn Thư mục lưu dự án của bạn
Nháy nút OK Dự án mới sẽ mở, hiển thị một
biểu mẫu tên là Form1.vb phía bên trái màn hình và
Solution Explorer trên phía bên phải của màn hình
Trang 146 Cửa sổ thiết kế biểu mấu (Form)
Phần lớn các trường hợp bạn tạo
một ứng dụng Windows bắt đầu bởi
một form Các form là phần của
chương trình mà người dùng thấy Bạn
sẽ đặt các đối tượng lên form, như các
nút, các hộp văn bản Khi một nút
được nháy, mã lệnh sẽ chạy để thực
hiện xử lý các yêu cầu cho nút đó
Một form trắng có thể thấy trong
cửa sổ chính phía bên trái màn hình
Cửa sổ này được gọi là cửa sổ thiết kế
form (tên nhãn đặt là Form1.vb
[Design]) Solution Explorer có thể
thấy phía bên phải Vào thời điểm này
form không có các nút hoặc hộp văn
bản trên nó Các thành phần đó sẽ
được tạo trên form sau
7 Cửa sổ hộp công cụ (Toolbox)
Nhiều tính năng trong Visual Studio.NET được truy cập bằng việc bật các cửa sổ chức năng tương ứng Ví dụ để tạo nút và
hộp văn bản trên form, bạn sẽ bật
cửa sổ hộp công cụ Hộp công cụ
hiển thị tất cả mọi thứ khác nhau mà
bạn có thể đưa vào form như: các nút
Nháy đúp Button để thêm một nút
lệnh cho form (Nút lệnh được thêm
có thể bị ẩn phía sau hộp công cụ
Bạn sẽ học cách di chuyển nó trong
mục tiếp theo.)
Trang 158 Di chuyển và thay đổi kích thước nút lệnh
Bạn đã thêm một nút lệnh cho form, hãy
di chuyển và thay đổi kích thước nút lệnh:
1 Nháy lên nút lệnh và kéo nó tới tâm
của biểu mẫu
2 Di chuyển con trỏ trên các hình
vuông màu trắng (các nút này dùng
để điều khiển kích thước của nút
lệnh)
3 Ấn và giữ nút chuột trái, kéo nút
điều khiển rộng hoặc thu hẹp kích
Window Forms Designer Generated Code
Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click
End Sub
Đoạn mã Button1_Click được thực hiện khi người dùng nháy chuột vào nút lệnh Nếu chúng ta nháy nút lệnh ngay bây giờ, sẽ không có gì xảy ra Chúng ta cần bảo cho ứng dụng biết phải làm gì khi nút lệnh được nháy
1 Sau khi bạn nháy đúp vào nút Button 1, cửa sổ mã lệnh mở ra
2 Nháy lên dòng trắng phía trên End Sub
3 Nhập dòng mã lệnh phía bên dưới một cách chính xác như dưới đây
MessageBox.Show("Hello, World.")
Dòng mã lệnh này chạy khi người dùng nháy chuột vào nút trên form
Trang 1610 Dịch chương trình
Đây là nơi mã lệnh mà bạn và Visual Studio.NET đã tạo ra được biên dịch thành các lệnh
mà máy tính có thể hiểu được
1 Chọn Build từ thanh menu chính
2 Chọn Build Solution từ menu kéo xuống
11 Dịch thành công
Sau khi bạn dịch thành công cửa sổ Output Window sẽ mở và hiển thị thông báo Thông báo này cho bạn biết là bạn đã dịch thành công chưa hay chương trình còn lỗi Nếu dịch thành công bạn sẽ nhìn thấy thông báo sau ở cửa sổ Output Window:
- Build started: Project: HelloWorld, Configuration:
Debug NET -
Preparing resources
Updating references
Performing main compilation
Building satellite assemblies
- Done -
Build: 1 succeeded, 0 failed, 0 skipped
Trang 17Name 'mMessageBox' is not declared
Building satellite assemblies
- Done -
Build: 0 succeeded, 1 failed, 0 skipped
Khi có thể, Visual Basic
cũng gạch chân vị trí của lỗi
Nháy đúp vào nơi thông báo
lỗi, con trỏ chuyển tới vị trí lỗi
Đồng thời, một cửa sổ Task
List mở ra cho bạn thấy các lỗi
Nếu bạn dịch không thành
công, quay lại và kiểm tra dòng
lệnh mà bạn đã gõ vào cho nút
lệnh xem đã đúng chưa Sau đó
làm theo các bước dịch chương
trình mà chúng tôi đã chỉ cho
bạn
Trang 1813 Bắt đầu chương trình của bạn
Chương trình của bạn bây giờ dịch không còn lỗi, bạn đã có bước khởi đầu thuận lợi Bây giờ là lúc bắt đầu chạy chương trình đầu tiên
1 Chọn Debug từ thanh thực đơn chính
2 Chọn Start từ thực đơn kéo xuống (Form được hiển thị
và trong Form là nút lệnh bạn đã thêm vào.)
3 Nhấn Nút lệnh để xem kết quả của bạn
14 Hiển thị hộp thông báo
Khi bạn nhấn Nút lệnh một hộp thông báo xuất hiện và hiển thị dòng chữ ” Hello, Word “ (“Chào, Thế giới”) Đó là những gì bạn muốn chương trình thực hiện! Xin chúc mừng! Bạn vừa chạy chương trình Visual Basic.NET đầu tiên!
1 Nháy nút lệnh OK
để đóng hộp thông báo Hộp thông báo biến mất, nhưng form vẫn còn Bạn
có thể nhấn nút lệnh
để tiếp tục hiển thị Hộp thông báo
2 Nhấn vào nút "X" trên góc trên bên phải của Form để đóng chương trình
Trang 1915 Cửa sổ Xuất chương trình - Output
Một khi chương trình kết thúc, Thông tin gỡ rối(Debug) được hiển thị Bạn có thể cuộn cửa sổ Output để xem tất cả thông tin
Các học viên khi bắt đầu học thường chưa sử dụng thông tin gỡ rối Nó được đề cập ở đây
để các bạn không ngạc nhiên, bối rối khi thấy nó
16 Lưu chương trình của bạn
Bây giờ đã đến lúc bạn lưu chương trình của mình Phần này cũng giống như các chương trình Windows khác
1 Chọn File từ menu chính
2 Chọn Save All từ thanh menu kéo xuống
3 Để thoát Visual Studio.NET, chọn File từ menu chính
4 Chọn Exit từ menu kéo xuống
17 Các tệp tin và thư mục chương trình
Khi bạn tạo một ứng dụng Visual Basic, có nhiều tệp được tạo ra Bạn cần biết những tệp nào được tạo và chúng có nghĩa gì Hãy nhìn hình dưới đây để thấy các tệp và thư mục điển hình
Sử dụng Windows Explorer để chuyển đến nơi bạn lưu chương trình HelloWorld Mở rộng thư mục này bạn sẽ thấy các tệp mà Visual Studio.NET tạo ra cho chương trình
Bạn sẽ thấy có các tệp sau:
• HelloWorld.sln là tệp giải pháp để quản lý tất cả các tệp của giải pháp Một giải pháp có thể tham chiếu đến nhiều chương trình nhưng giải pháp HelloWorld chỉ chứa duy nhất chương trình HelloWorld.vbproj Tệp HelloWorld.sln là một tệp mà bạn cần khi mở một dự án đã có
• Tệp Form1.vb chứa Form1 và các mã lệnh kết hợp với Form1
Trang 20• Nhấp đúp vào thư mục Bin để mở nó Thư mục Bin chứa tệp mã thực hiện gọi là HelloWorld.exe Tệp này có thể chạy trên máy tính khác ngay cả khi máy tính không cài Visual Studio.NET
18 Bài kiểm tra
Trang 21BÀI 3 GIẢ MÃ LỆNH
1 Các kiểu đoạn mã lệnh
Rất nhiều lập trình viên viết chương trình dưới dạng giả mã lệnh trước và sau đó chuyển chúng thành một ngôn ngữ lập trình thực sự Điều này giúp họ xác định dòng lôgic của chương trình và những gì chương trình cần phải làm
Giả mã lệnh bao gồm các câu lệnh đơn giản viết dưới dạng tiếng Anh (hoặc ngôn ngữ mẹ
đẻ của bạn) chúng giải thích những gì chương trình cần phải làm Sau khi bạn đã viết giả mã lệnh thì việc viết mã thực sự dựa trên giả mã lệnh trở lên dễ dàng hơn Giả mã lệnh đưa ra được cấu trúc hoặc phác thảo của chương trình
Một số kiểu câu lệnh cơ bản được hỗ trợ bởi tất cả các ngôn ngữ lập trình bao gồm:
• Biến được sử dụng để lưu trữ thông tin như là số hoặc văn bản Chúng là nơi lưu giữ thông tin, hoặc kết quả tính toán Các câu lệnh gán đặt giá trị vào biến, giá trị
có thể là số, văn bản, các biến khác, hoặc giá trị tính toán Các câu lệnh so sánh được sử dụng để so sánh một giá trị hoặc một biến với một số, hoặc một giá trị khác, hoặc một biến khác Câu lệnh so sánh yêu cầu câu hỏi mà câu trả lời chỉ có thể là “đúng” hoặc “sai”
• Các câu lệnh Quyết định (Decision Statement) được sử dụng để tạo sự lựa chọn
Sự lựa chọn dựa trên sự so sánh Nếu câu trả lời của sự so sánh là “đúng” , thì sự lựa chọn đầu tiên được thực hiện Nếu câu trả lời của sự so sánh là “sai” , thì sự lựa chọn thứ hai được thực hiện Các lệnh quyết định, thường được gọi là câu lệnh
rẽ nhánh bởi vì dòng chương trình có thể đi theo hướng này, hoặc hướng khác
• Các câu lệnh lặp được sử dụng để thực hiện các công việc có tính chất lặp đi lặp lại Câu lệnh lặp rút gọn số mã lệnh bạn cần viết khi chương trình thực hiện một hành động lặp đi lặp lại Khi bạn học cách viết chương trình bạn sẽ học cách sử dụng những cấu trúc lệnh cơ bản để chương trình bạn viết ra thực hiện được đúng
Trang 22Ví dụ về cách sử dụng giả mã lệnh để thiết kế chương trình:
Ví dụ 1 - Viết một chương trình để tính toán chi phí xăng trung bình theo đô la trên một
ga lông trong một chuyến đi
Để trả lời câu hỏi này, đầu tiên bạn sẽ thiết kế chương bằng giả mã lệnh Đây là các bước chương trình sẽ phải làm để tính chi phí xăng trung
bình trong chuyến đi:
1 Cộng tất cả số tiền xăng đã mua và gán giá
trị này cho biến tổng số tiền
2 Cộng tất cả số ga lông xăng đã mua và gán
giá trị này cho biến tổng số ga lông
3 Lấy biến tổng số tiền chia cho biến tổng số
ga lông và gán kết quả thu được cho biến
tổng số tiền trên tổng số ga lông
4 Hiển thị thông báo cho biết chi phí trung
10 Sử dụng Cờ lê để thay thế và siết chặt toàn bộ các đai ốc (lệnh lặp)
11 Nắp trục đậy bánh xe vào đúng vị trí của nó và siết chặt
12 Hạ thấp kích thuỷ lực xuống
Trong các giả mã lệnh ở trên có sự trộn lẫn các lệnh gán, lệnh so sánh, lệnh quyết định, và lệnh lặp Ví dụ bạn phải nhớ kích cỡ của lốp bị xẹp hơi - đó là một câu lệnh gán Bạn phải so sánh kích cỡ lốp cần được thay với kích cỡ của các lốp ở trong kho - đây là lệnh so sánh Lệnh quyết định được sử dụng cùng với lệnh so sánh Nếu bạn có lốp đúng cỡ thay thế thì tiếp tục, ngược lại lấy lốp thay thế từ kho
Trang 23Tháo ra và siết chặt các đai ốc có thể được xem như các quá trình lặp Bạn cần lặp mỗi quá trình một số lần cho đến khi tất cả các đai ốc đã được tháo ra và tất cả các đai ốc đã được siết chặt
3 Chú thích mã lệnh
Các ngôn ngữ lập trình hiện đại, bao gồm Visual Studio.NET, cho phép bạn thêm các chú thích vào mã lệnh Các chú thích không được biên dịch như một bộ phận của chương trình và không được thực hiện khi chương trình chạy Các chú thích là cách hữu ích để lập tài liệu cho
mã lệnh Chúng giúp bạn nhớ mã lệnh làm gì Chúng cũng giúp các lập trình viên khác hiểu được mã lệnh bạn viết Bạn nên chú thích mã lệnh Viết chú thích thể hiện một người lập trình là một lập trình viên chuyên nghiệp Một lập trình viên chuyên nghiệp bỏ thời gian để hiểu thấu đáo và lập tài liệu cho mã lệnh mà mình đã viết
Bạn nên thêm chú thích vào mã lệnh khi bạn thay đổi hoặc thêm chức năng của nó Bạn cũng nên thêm chú thích vào các mã lệnh khó hiểu, mã lệnh tính toán các vấn đề riêng biệt, các mã lệnh tính toán phức tạp
Trong Visual Basic.NET bạn bắt đầu dòng ghi chú bằng dấu nháy đơn (') Các dòng mã lệnh khác bắt đầu bằng đấu nháy đơn được coi là các chú thích và sẽ không được biên dịch hoặc thực hiện khi bạn chạy chương trình
Chú thích có chức năng quan trọng khác bên cạnh chức năng làm tài liệu cho mã Vì các chú thích không được thực hiện nên bạn có thể sử dụng chúng như là một cách thức ngăn không cho các dòng mã lệnh thực hiện Điều này gọi là “biến thành chú thích” (commenting out) dòng mã lệnh Biến thành chú thích là một cách thức được dùng để giúp bạn tìm lỗi trong mã lệnh Nếu bạn tìm thấy lỗi trong chương trình bạn có thể biến thành chú thích dòng
mã lệnh hoặc toàn bộ khối mã lệnh cho đến khi không xuất hiện lỗi Mã lệnh cuối cùng mà bạn biến thành chú thích có thể là nơi xuất hiện lỗi
Bây giờ tôi sẽ chỉ cho các bạn ví dụ về khoanh vùng mã lệnh Để ý là có ba dòng mã lệnh Dòng thứ hai được khoanh vùng bằng cách đặt một dấu nháy đơn tại đầu dòng lệnh Dòng thứ hai sẽ không thực hiện, còn dòng thứ nhất và thứ ba sẽ chạy!
MessageBox.Show("Tôi đến từ")
'MessageBox.Show(" Một thành phố tên là")
MessageBox.Show(" San Francisco.")
Trang 244 Giả mã lệnh được dùng với mục đích chú thích
Bạn có thể sử dụng các chú thích để thiết kế và phác thảo chương trình Bạn đã dùng giả
mã lệnh để miêu tả công việc mã lệnh sẽ làm Vì thế hãy lợi dụng điều này Copy và dán giả
mã lệnh vào trong chương trình và đặt dấu nháy đơn vào đầu từng dòng giả mã lệnh để chuyển nó thành dòng chú thích Hãy viết mã Visual Basic.NET dưới các dòng giả mã lệnh
và chương trình lúc này không chỉ là một chương trình đầy đủ mà nó còn được chú thích một cách đầy đủ
Đây là ví dụ, dựa trên giả mã lệnh tính chi phí xăng trung bình đô la trên ga lông trong chuyến đi của chúng tôi Để ý rằng giả mã lệnh cung cấp các chú thích
'Cộng tất cả số tiền chúng ta đã trả cho tiền xăng và gán số này cho biến (tổng số đô la) Dim totalDollars As Double
Dim dollarsPerGallon As Double
dollarsPerGallon = totalDollars / totalGallons
' Hiển thị thông báo giá trung bình cho mỗi galông xăng
MessageBox.Show (dollarsPerGallon)
5 Thụt lề và khoảng trắng
Đầu tiên các bạn có thể dễ ràng nhìn thấy các
chú thích được bắt đầu với một dấu nháy đơn
Màu của dòng chú thích cũng được chuyển thành
màu xanh lá cây Điều này giúp chúng ta phân
biệt dễ ràng giữa chú thích và mã lệnh Thứ hai,
một dòng trắng được thêm vào trước dòng chú
thích, dòng trắng này ngắt các chú thích và mã
lệnh thành các nhóm tương ứng với chức năng
của chúng, Các dòng trắng này giúp cho lô gíc
chương trình rõ ràng và dễ hiểu
Trong hầu hết các trường hợp Visual
Basic.NET tự động thêm khoảng trắng và làm thụt
đầu dòng các dòng mã lệnh, điều này giúp cho
việc đọc mã lệnh được dễ dàng Nhưng bạn có thể
thêm khoảng trắng và thụt đầu dòng nếu bạn
Trang 25muốn Vì vậy đây là ý kiến của tôi về việc dùng thụt đầu dòng và khoảng trắng – sử dụng chúng sao cho việc đọc mã lệnh cũng như chú thích được dễ ràng Visual Basic.NET và các ngôn ngữ NET khác không quan tâm đến dòng trống hoặc thụt đầu dòng Chúng bị bỏ qua khi dịch chương trình Trong khi Visual Basic.NET không quan tâm thì những dòng trắng và thụt đầu dòng này sẽ giúp ai đó đọc mã lệnh do bạn viết dễ hơn
6 Bài kiểm tra
Trang 26BÀI 4 BIỂU MẪU - FORM
“Form lốp xẹp hơi” dùng để nhập thông tin về lốp xẹp hơi Đây là miêu tả và các chức năng của các điều khiển cần thiết của form “Form lốp xẹp hơi”:
trái sau, lốp phải sau)
mẫu, cỡ lốp, số sê ri kho, đơn giá
Do vậy biểu mẫu lốp xẹp có hai hộp văn bản, bốn tùy chọn, một danh sách kéo xuống, một hộp kiểm tra và một nút lệnh Bạn có thể sắp đặt chúng trên Form theo nhiều cách khác nhau
Form cũng phải có hình thức đẹp Nó không thể có các màu sắc kì quái hoặc gây cảm giác khó chịu về mặt thị giác, giống như văn bản nhấp nháy, có thể làm rối trí người dùng Và các điều khiển trên form cũng phải được bố trí một cách gọn gàng và lô gíc Phải suy nghĩ về thứ
tự mà người dùng sẽ nhập thông tin và tương tác với chương trình
Đôi khi phải khuyến cáo người dùng rằng họ chưa nhập đủ các thông tin được yêu cầu hoặc thông tin mà họ nhập vào là sai Khi bạn thiết kế form, bạn thực sự phải suy nghĩ như người dùng (tức là bạn phải đặt mình vào vị trí của người dùng) và cố gắng tưởng tượng tất
cả các cách thức mà một người dùng có thể tương tác với chương trình do bạn viết
Cuối cùng, khi thiết kế form, bạn cần nhớ rằng tất cả các ứng dụng Windows đều tuân theo chuẩn giao diện (chuẩn giao diện bao gồm việc chuẩn hoá các thao tác và hình thức thể hiện của các điều khiển theo một quy tắc nào đấy) Người dùng thường mong đợi ứng dụng
Trang 27của bạn tuân theo các hướng dẫn thiết kế nào đó và hành động theo một cách nào đó Ví dụ: Thực đơn (menu) lựa chọn đầu tiên của ứng dụng Window là “File", và bên dưới "File" sẽ là thực đơn lựa chọn "Exit" mà người dùng chọn để kết thúc (close) chương trình Người dùng
sẽ rất ngạc nhiên và cảm thấy khó chịu nếu họ nhấn nút lệnh “kết quả tính toán” mà chương trình của bạn không đưa ra kết quả mà lại làm một việc gì đó chẳng liên quan như: thay đổi màu của form chính thành màu đỏ, hay chuyển tất cả các tiêu đề của nút lệnh sang tiếng la tinh
3 Sử dụng các biểu mẫu (form)
Khi bạn tạo một ứng dụng Window mới, Visual
Studio tự động thêm một form tên là Form1.vb vào
ứng dụng Đây là form chính, hoặc form khởi động, của
ứng dụng Đây là form mà người dùng sẽ nhìn thấy khi
họ chạy chương trình Form chính như là bảng điều
khiển trung tâm Từ form này người dùng có thể
chuyển đến (thực hiện) bất kì phần nào của chương
trình
Thông thường, một thanh thực đơn hoặc thanh công cụ được đặt ngang trên phần đầu của form chính để cung cấp một phương tiện chuyển đến bất cứ bộ phận nào của ứng dụng Từ form chính người dùng chọn một mục của thực đơn hoặc nhấn chuột để mở form khác Những form này có thể được dùng để nhập hoặc xem thông tin hoặc tương tác với chương trình theo một cách khác Thường thì các form này có một mục đích xác định, kiểu như xem kết quả, nhập danh sách các hiệu ứng phụ, hoặc chọn các thông số cài đặt cho chương trình Sau khi người dùng đã nhập vào hoặc xem thông tin trên một form, Nói chung họ thường đóng form và trở về form chính Mặc dù Visual Studio chỉ tự động thêm Form1, nhưng bạn
có thể tự thêm vào chương trình số form mà bạn cần
Một kiểu form quan trọng khác là hộp thông báo Bạn đã thực sự sử dụng form này rồi Trong chương trình “Chào Thế giới”, bạn đã sử dụng một hộp thông báo để hiển thị dòng chữ "Chào, Thế giới" Hộp thông báo được sử dụng
thông báo trong form hội thoại chung Sau khi người
dùng đọc thông báo, họ đóng hộp thông báo bằng cách
nhấn vào nút OK
Vì vậy, bạn sẽ tự mình thiết kế form - form “lốp xẹp
hơi” Sau đó bạn thêm một vài điều khiển vào form và cài
đặt các thuộc tính cho chúng Tôi sẽ chỉ cho bạn cách
thức mà các điều khiển form đáp lại các sự kiện như là
nhấn nút lệnh và chúng ta sẽ quay lại form đã được
Visual Studio xây dựng sẵn là: hộp thông báo
Form1.vb có thể đổi tên thành một tên có ý nghĩa hơn Điều này rất nên làm trong các ứng dụng phức tạp
Các học sinh sẽ đọc giáo trình nhưng thường không thực hiện đúng như những gì mô tả trong tài liệu Các học sinh đạt hiệu quả nhất nếu làm đúng những gì trong sách hướng dẫn Cần kiểm tra để tin chắc học sinh hiểu giáo trình khóa học
Trang 284 Các thuộc tính của form
Khi bạn tạo mới một ứng dụng Window, Form1 được tự động thêm vào Form1 có kích thước mặc định là 300 x 300 điểm ảnh Để kiểm tra điều này, sử dụng cửa sổ thuộc tính (Properties Window) Bạn cũng có thể thay đổi kích cỡ của form bằng cách sử dụng cửa sổ này
Nhưng đầu tiên, bạn cần phải tạo một ứng dụng
Window và đặt tên cho nó là Lốp xẹp hơi (FlatTire)
Sau khi dự án được tạo, Chọn Form1 bằng cách
nhấn vào nó Tiếp đến nhấn phím F4 để mở cửa sổ
thuộc tính
Khi Form1 được chọn, cửa sổ thuộc tính hiển
thị các thuộc tính của Form Lưu ý rằng thuộc tính
Text được chọn theo mặc định
1 Duyệt qua danh sách các thuộc tính của
biểu mẫu Form1 và chỉ ra thuộc tính
Size Lưu ý rằng thuộc tính Size có một
dấu cộng bên cạnh Điều này chỉ ra rằng
thuộc tính Size có thể được mở rộng để
hiển thị các thuộc tính khác
2 Nháy vào ký hiệu dấu cộng bên cạnh thuộc tính Size Các thuộc tính Height và Width được hiển thị Thuộc tính
Height của biểu mẫu là 300 và
Width là 300 Hãy thay đổi kích
thước của biểu mẫu Form1
Trang 293 Nháy đúp lên thuộc Width để bôi
đen giá trị thuộc tính Ấn phím
xóa để xóa giá trị thuộc tính
4 Nhập số 450 Ấn phím Enter
Điều này có nghĩa bạn chỉ thay
đổi thuộc tính Width của biểu
mẫu Lưu ý độ rộng của biểu
mẫu được thay đổi ngay khi bạn
ấn phím Enter Lưu ý giá trị
Width tiếp theo thuộc tính Size được gán cùng thời điểm
Bây giờ hãy gán thuộc tính BackColor của Form1 Thuộc tính này là màu của biểu mẫu
và các điều khiển được đặt trên đó Trong cửa sổ Properties, đến thuộc tính BackColor của Form1 Nháy từ "Control" Một nút mũi tên chỉ xuống xuất hiện Một cửa sổ bảng màu mở
ra Chọn tab Custom Nháy đúp một hình vuông tô màu để chọn màu
Biên dịch và chạy ứng dụng Để ý màu nền mới của form! Và nhìn xem, form bây giờ có tiêu đề “form xẹp lốp” ("Flat Tire Form") và bây giờ nó không còn hình dạng là hình vuông nữa, mà có hình dạng là hình chữ nhật!
Bây giờ bạn đã biết dùng cửa sổ thuộc tính để thay đổi thuộc tính của form Cuộn dọc theo các thuộc tính của Form1 và bạn sẽ quen thuộc với danh sách thuộc tính này Cửa sổ thuộc tính cho phép bạn thay đổi các thuộc tính của form tại thời điểm thiết kế form – Nghĩa
là, khi bạn đang xây dựng form Như bạn sẽ thấy, cửa sổ thuộc tính không chỉ dành cho form
Nó cũng cho phép bạn thay đổi thuộc tính của nút lệnh, hộp văn bản, và các điều khiển khác của form
5 Điều khiển và thuộc tính của form
Hiện tại bạn là một chuyên gia thêm các nút lệnh vào biểu mẫu, nhưng việc đó có một chút hơi lặp lại Bạn có thể thấy cửa sổ Toolbox có sẵn nhiều các điều khiển khác nhau của form Vì vậy bây giờ tôi có thể chỉ cho bạn cách sử dụng một số điều khiển chung nhất và cách cài đặt các thuộc tính hữu ích nhất của chúng Hãy bắt đầu với điều khiển nhãn (label)
5.1 Các nhãn (Labels)
Điều khiển nhãn được sử dụng để ghi nhãn (tiêu
đề) cho các điều khiển riêng biệt hoặc nhóm các điều
khiển trên form Ngoài ra nó còn được sử dụng một
cách phổ biến để đưa ra các hướng dẫn hoặc chỉ ra
thứ tự cho việc nhập thông tin trên form
Mở cửa sổ công cụ và nhấp đúp vào điều khiển
nhãn Nhãn được thêm vào form Kéo nó đến vị trí
Tất cả các điều khiển là các đối tượng nhưng không phải tất cả các đối tượng
là các điều khiển Một đối tượng có thể
là mọi thứ trừ thuộc tính Một thuộc tính
là tính chất của đối tượng như màu hoặc độ rộng
Trang 30thích hợp bằng cách giữ và nhấn chuột trái và di chuyển chuột
Chọn Label1 và mở cửa sổ thuộc tính Cửa sổ thuộc tính bây giờ hiển thị danh sách thuộc tính của điều khiển nhãn Cuộn đến thuộc tính Text (văn bản), nhấp đúp để chọn văn bản, và dùng phím Backspace để xoá, sau đó gõ từ “Nhập giấy phép” vào
Hộp văn bản thường được dùng để hiển thị số lượng lớn thông tin Nếu văn bản thực sự dài bạn có thể cần thêm thanh cuộn (scrollbars) vào hộp văn bản
Thêm hộp văn bản khác nữa vào Đặt thuộc tính Multiline (nhiều dòng) thành True (đúng) Đặt chiều cao là 100 điểm ảnh và chiều rộng là 100 điểm ảnh Nếu thuộc tính Multiline (nhiều dòng) được đặt là FALSE (sai), bạn sẽ không bao giờ có thể thay đổi được thuộc tính Height (chiều cao) Đặt thuộc tính Scrollbars (thanh cuộn) thành thanh cuộn dọc (Vertical) Đặt thuộc tính ReadOnly (chỉ đọc) thành True (đúng) để cho người dùng không thể nhập văn bản vào trong hộp văn bản
5.3 Nút lựa chọn (Radio Button)
Nút lựa chọn được sử dụng để cung cấp cho người dùng khả năng lựa chọn Người dùng chỉ có thể chọn một nút lựa chọn từ một nhóm các nút lựa chọn Nó giống như sự thử nhiều lựa chọn
Trong hộp công cụ (Toolbox), nhấp đúp Nút lựa chọn RadioButton1 được thêm vào form Chọn RadioButton1 trên form, nhấp phải chuột và chọn Copy từ thực đơn Chỉ con trỏ chuột vào Form1, nhấp chuột phải, và chọn Paste từ thực đơn để dán Điều kỳ diệu, nút lựa chọn RadioButton2 được thêm vào form Lặp lại thao tác dán (Paste) để thêm RadioButton3
và RadioButton4 vào form
Chọn RadioButton1 và mở cửa sổ thuộc tính Cuộn đến thuộc tính Text (văn bản) và thay đổi giá trị của nó từ “Nút lựa chọn 1” ("RadioButton1") thành “Trái, trước” Và thay đổi thuộc tính Text (văn bản) của các nút lựa chọn: “Nút lựa chọn 2” thành “Trái, sau”, RadioButton3 thành “Phải, trước”, nút RadioButton4 thành "Phải, sau"
Trang 31Ô đánh dấu cũng cung cấp cho người dùng khả năng lựa chọn Người dùng có thể lựa chọn một hoặc nhiều Ô đánh dấu từ nhóm Ô đánh dấu Trên cửa sổ Hộp công cụ, nhấp đúp điều khiển Ô đánh dấu Điều khiển CheckBox1 được thêm vào form Mở cửa sổ thuộc tính
và thay đổi thuộc tính Text (văn bản) thành “Công việc gấp” (Rush Job)
5.5 Hộp danh sách đổ xuống (ComboBox)
Hộp danh sách đổ xuống đưa ra một danh sách các sự lựa chọn cho người dùng Khi người dùng chọn một mục từ danh sách thì mục vừa được chọn sẽ được hiển thị trong Hộp danh sách đổ xuống
Trên cửa sổ công cụ, nhấp đúp vào điều khiển hộp danh sách đổ xuống Hộp danh sách đổ xuống ComboBox1 được thêm vào form
Mở cửa sổ thuộc tính và thay đổi thuộc tính Text (văn bản) của hộp danh sách đổ xuống thành "Chọn cỡ lốp" Cuộn đến thuộc tính Items (các mục chọn) Nhấp vào từ "Collection" (tập hợp) Một nút có ba dấu chấm ở trên xuất hiện ở bên phải Nhấn vào nút này, một cửa sổ
sẽ được mở ra, đây là nơi mà bạn có thể nhập vào một danh sách các mục để hiển thị trong Hộp danh sách kéo xuống Bạn phải đặt mỗi mục mà bạn nhập vào danh sách trên một dòng Sau khi nhập vào một dòng, bạn phải bấm phím Enter để tạo một dòng mới Trong cửa sổ này bạn thực hiện các thao tác sau: gõ 12, nhấn phím Enter, gõ 13, nhấn phím Enter, gõ 14, nhấn phím Enter và gõ 15 Nhấn nút OK để đóng cửa sổ
5.6 Nút Lệnh (Command Button)
Hộp văn bản có thể được sử dụng để hiển thị thông tin cho người dùng hoặc thu thập thông tin từ người dùng Trên hộp công cụ, nhấp đúp điều khiển văn bản Hộp Textbox1 được thêm vào form Kéo Textbox1sang bên phải của Label1 Cuộn đến thuộc Text tính (văn bản), nhấp đúp, và nhấn phím Backspace để xoá văn bản Đặt thuộc tính ReadOnly (chỉ đọc) thành False (sai) để cho người dùng có thể nhập văn bản vào trong hộp văn bản Giá trị mặc định của thuộc tính chỉ đọc là False (sai)
Thêm nút lệnh vào form Đặt thuộc tính Text (văn bản) thành "Lấy lốp" Thay đổi thuộc tính BackColor (màu nền) thành đỏ Tìm thuộc tính Font (phông chữ) Nhấp vào chữ “Font “
để hiển thị nút có ba dấu chấm Nhấn vào nút này để hiển thị cửa sổ phông chữ Trong cửa
sổ này, thay đổi thuộc tính Font Style (kiểu phông chữ) thành Bold (đậm nét) Nhấn nút OK
để đóng cửa sổ phông chữ
Trang 32Chạy chương trình Nhấp vào các điều khiển form khác nhau và theo dõi kết quả
• Điều gì xảy ra khi bạn nhấn vào hộp danh sách?
• Điều gì xảy ra khi bạn chọn một nút lựa chọn từ nhóm nút lựa chọn
• Khác với nút lựa chọn, Ô đánh dấu thì sao?
Nhập văn bản vào trong hộp văn bản ở bên cạnh điều khiển gán nhãn “Nhập giấy phép”
Để ý rằng hộp văn bản khác có màu xám và bạn không thể nhập văn bản vào đấy Nhấn nút
"X" trên góc phải trên để đóng chương trình
Bước tiếp theo sẽ là thêm mã lệnh VB.NET vào form và các điều khiển
Bạn phải làm quen với các thuộc tính của từng điều khiển mà bạn đã thêm vào form Bạn
có thể trình bày các điều khiển trên form sao cho form gọn gàng và dễ sử dụng hơn Bạn có thể thêm các nhãn để chú thích cho người dùng mục đích của các điều khiển và cung cấp các thông tin chỉ dẫn cần thiết
Trang 336 Kích hoạt sự kiện
Sự kiện được kích hoạt bởi các hành động của người dùng Ví dụ, khi người dùng nhấn nút lệnh, chọn một mục từ hộp danh sách, thay đổi văn bản trong hộp văn bản thì sự kiện được sinh ra Hành động nhấp hoặc nhấp đúp chuột của người dùng trên một điều khiển hoặc
di chuyển con trỏ ở trên hoặc ra khỏi điều khiển cũng làm phát sinh sự kiện Bạn có thể sử dụng những sự kiện này để thực hiện mã VB.NET kết hợp với chúng Mã VB.NET là cái tạo nên chương trình thực hiện nhiệm vụ phải làm
Khi bạn viết ứng dụng Hello World, bạn nhấp đúp trên nút lệnh và cửa sổ mã lệnh được
mở ra để bạn có thể nhập mã lệnh cho sự kiện Button1_Click (nhấn nút lệnh Button1) Sự kiện Button1_Click là sự kiện mặc định cho nút lệnh Mỗi điều khiển đều có một sự kiện mặc định Khi bạn đang ở chế độ thiết kế, nhấp đúp vào điều khiển thì cửa sổ mã lệnh sẽ được mở cho sự kiện mặc định
Ví dụ:
được nhấn)
nội dung văn bản thay đổi)
(xảy ra khi thuộc tính kiểm tra - Checked thay đổi)
ra khi thuộc tính kiểm tra - Checked bị thay đổi)
SelectedIndexChanged (là sự kiện xảy ra chỉ số của mục được chọn thay đổi)
Để chỉ cho bạn công việc này như thế nào, xin được thêm mã lệnh vào sự kiện mặc định của điều khiển của form “form lốp xẹp hơi” Mã lệnh sẽ hiển thị một hộp thông báo để thông báo kiểu của điều khiển đã gửi sự kiện Trong chế độ thiết kế, nhấp đúp vào từng điều khiển
mà bạn đã thêm vào form Cửa sổ mã lệnh sẽ mở cho sự kiện mặc định của từng điều khiển Nhập vào dòng mã lệnh sau đây vào từng thủ tục xử lý sự kiện
MessageBox.Show(sender.GetType.Name)
Biên dịch và chạy ứng dụng Nhấp vào các phần tử khác nhau, thay đổi văn bản trong hộp soạn thảo và chọn một mục từ hộp danh sách đổ xuống Với mỗi điều khiển, sự kiện mặc định được kích hoạt làm xuất hiện hộp thông báo hiển thị kiểu của điều khiển đã gửi sự kiện Nếu form “form lốp xẹp” là một bộ phận của một ứng dụng thực tế, bạn sẽ thêm mã lệnh vào các sự kiện mặc định để cung cấp chức năng mà chương trình yêu cầu Ví dụ, khi bạn nhấn nút Lấy lốp, thì danh sách các lốp hiện có được hiển thị trong hộp văn bản
Trang 347 Hộp thông báo (MessageBoxes)
Thường thì bạn sẽ nhận thấy là chương trình của bạn cần tham gia hội thoại với người dùng Có thể Chương trình cần gửi thông báo đến hoặc thu thập các câu trả lời từ người dùng, hoặc nhận các dữ liệu của người dùng Những kiểu hội thoại này phổ biến cho nên Visual Studio.NET có một đối tượng hộp thông báo để quản lý chúng Trong chương trình bạn viết đầu tiên, bạn đã sử dụng dòng mã lệnh để hiển thị một hộp hội thoại
MessageBox.Show("Hello World")
Hộp hội thoại là một kiểu form được xây dựng sẵn trong VB.NET Để sử dụng nó bạn không phải thêm hộp hội thoại vào dự án Mà bạn chỉ cần gọi phương thức Show() của nó và thêm nội dung cần thông báo cho phương thức Show() là đủ Cú pháp sử dụng hộp hội thoại như sau:
MessageBox.Show("Thông báo của bạn")
Để ý rằng thông báo mà bạn muốn hiển thị phải được bao trong cặp dấu nháy kép (“ “)
Trang 358 Bài kiểm tra
Trang 36BÀI 5 CÁC THUỘC TÍNH VÀ PHƯƠNG PHÁP
1 Mã lệnh bắt đầu ở đâu
Cửa sổ thuộc tính dễ sử dụng, nhưng không linh hoạt Làm thế nào nếu người dùng muốn thay đổi màu nền của form khi họ đang sử dụng chương trình? Làm thế nào nếu họ cần thay đổi cỡ và kiểu của phông chữ? Làm thế nào mà chương trình của bạn biết nếu người dùng đánh dấu vào hộp đánh dấu hoặc nhấn vào một nút lựa chọn? Vì người dùng sẽ không thể truy cập cửa sổ thuộc tính khi chương trình chạy được, thế thì họ có thể làm như thế nào? Câu trả lời là: sử dụng mã lệnh Visual
Basic.NET! Bạn có thể làm tất cả những việc này,
và nhiều hơn thế nữa bằng cách sử dụng mã lệnh
Bạn viết mã lệnh để đọc thuộc tính của điều khiển
Bạn viết mã lệnh để thiết lập giá trị cho các thuộc
tính của chúng Điều này rất đơn giản và rất hiệu
quả
Mã lệnh được đặt ở đâu? Bạn có thể viết mã
lệnh trong trang mã lệnh của form Trong hầu hết
các trường hợp bạn sẽ đặt các mã lệnh vào trong các
thủ tục xử lý sự kiện (event handlers) của điều
khiển Ví dụ sự kiện nhấn nút: Khi người dùng thực
hiện một hành động, chẳng hạn như nhấn vào nút,
mã lệnh mà bạn viết cho thủ tục xử lý sự kiện được
thực hiện và thuộc tính của điều khiển được đọc hoặc đặt lại giá trị Khi bạn thêm mã lệnh vào sự kiện của điều khiển là bạn đang biến form thành một chương trình làm việc thực sự
2 Đọc thuộc tính bằng mã lệnh
Tạo một ứng dụng Window và đặt tên là DocThuoctinh Mở hộp công cụ và thêm một nút lệnh vào Form1 Mở cửa sổ thuộc tính và thay đổi thuộc tính Text (văn bản) của Button1 thành "Đọc văn bản" Nhấp đúp vào nút Button1 để viết mã lệnh cho sự kiện nhấn nút Button1 Gõ vào dòng lệnh sau:
MessageBox.Show(Button1.Text)
Dịch và chạy chương trình Nhấn nút "Đọc văn bản" Một hộp thông báo được mở và hiển thị nội dung “Đọc văn bản” đó là thuộc tính Text của nút lệnh Button1 Kiểm tra: mã lệnh đọc thuộc tính Text của nút lệnh Button1 và sau đó hiển thị giá trị của nó bằng cách sử dụng một thông báo
Đây là một ví dụ khác Thêm nút khác vào Form1 Sử dụng cửa sổ thuộc tính để thay đổi thuộc tính Text của nút lệnh Button2 thành "Kích thước Form" Nhấp đúp vào nút Button2 để
mở cửa sổ soạn thảo mã lệnh cho sự kiện nhấn nút Gõ dòng mã lệnh sau đây vào thủ tục xử
lý sự kiện nhấn nút lệnh Button2
Trang 37MessageBox.Show(Form1.ActiveForm.Height & "," & Form1.ActiveForm.Width)
Dịch và chạy chương trình Nhấn vào nút lệnh "Kích thước Form" Một hộp thông báo hiển thị: 300,300 (đó là kích thước của form, giả sử bạn cứ giữ nguyên kích thước form như kích thước ban đầu của nó) Mã lệnh của bạn chỉ mới hiển thị thông báo chiều cao và chiều rộng của Form1 được phân biệt bởi dấu phẩy
Mã lệnh Visual Basic.NET có thể đọc tất cả các thuộc tính của form hoặc điều khiển form
- những thuộc tính được liệt kê trong cửa sổ thuộc tính Mã lệnh của bạn có thể đọc các thuộc tính như Height (chiều cao) và Width (chiều rộng), BackColor (màu nền), ForeColor (màu chữ), và tọa độ X, tọa độ Y Tuy nhiên, rất nhiều thuộc tính trong cửa sổ thuộc tính được cài đặt khi thiết kế form và chúng không thay đổi được khi chương trình chạy
Việc đọc các thuộc tính của form và điều khiển (như thuộc tính văn bản của hộp văn bản, thuộc tính kiểm tra của Ô đánh dấu…) mà người dùng thay đổi khi họ sử dụng chương trình thực sự mang lại lợi ích gì Đây chính là cách chương trình thu thập thông tin từ người dùng Biển số xe mà Jen đã nhập vào là gì? Lốp nào là lốp hết hơi? Cliff đã chọn cỡ lốp nào? Đây là ví dụ có tính thực hành hơn Hãy viết mã lệnh chỉ ra rằng Ô đánh dấu đã được đánh dấu hay chưa Mở cửa sổ hộp công cụ và thêm Ô đánh dấu vào Form1 Thêm Nút lệnh vào Form1 Mở cửa sổ thuộc tính và thay đổi thuộc tính Text của Nút lệnh thành “Check Me” (đánh dấu tôi) Nhấp đúp vào Nút lệnh để soạn thảo sự kiện nhấn chuột Gõ dòng lệnh sau đây vào sự kiện nhấn chuột:
MessageBox.Show(CheckBox1.Checked)
Dịch và chạy chương trình Nhấn vào nút “Check Me” Hộp thông báo hiển thị cái gì? đánh dấu vào Ô kiểm tra và lại nhấn nút “Click Me” Bây giờ thì hộp thông báo hiển thị cái gì? mỗi lần bạn nhấn vào nút lệnh hộp thông báo hiển thị trạng thái hiện tại của thuộc tính Check (đánh dấu) của Ô kiểm tra Nó sẽ thông báo True (Ô đánh dấu đã được đánh dấu) Một ví dụ khác: Đọc và hiển thị các từ mà người dùng nhập vào hộp văn bản
Thêm hộp văn bản vào Form1 Mở cửa sổ thuộc tính và chắc chắn rằng thuộc tính ReadOnly của nó được đặt là False Đặt thuộc tính Text của hộp văn bản là “Gõ vào đây” Thêm một nút lệnh vào Form1 Thay đổi thuộc tính Text của nó thành “Đọc văn bản” Nhấn Nút lệnh để soạn thảo mã lệnh cho sự kiện nhấn chuột Gõ dòng mã lệnh sau vào sự kiện nhấn chuột:
MessageBox.Show(TextBox1.Text)
Dịch và chạy chương trình Nhấp đúp vào TextBox1 và nhấn phím Backspace để xoá văn bản Nhập văn bản vào TextBox1 Nhấn vào nút "Đọc văn bản” Hộp thông báo hiển thị cái gì? thay đổi văn bản trong TextBox1 và lại nhấn Nút "Đọc văn bản" Điều gì xảy ra?
Trang 38Để đặt thuộc tính của điều khiển bằng Visual Basic NET chúng ta sử dụng lệnh gán Lệnh gán đã được bàn đến ở bài Giả mã lệnh Lệnh gán thực hiện việc gán cái này cho cái khác Mã lệnh của lệnh gán trông như một biểu thức đơn giản cùng với một dấu bằng đi cùng
nó
TextBox1.Text = "Các Quy tắc Viết mã lệnh"
Biểu thức ở phía bên phải của dấu bằng được tính trước Sau đó gán kết quả này cho biểu thức ở bên trái của dấu bằng
Dưới đây là một số ví dụ về cách sử dụng mã lệnh Visual Basic.NET để gán giá trị cho thuộc tính Ví dụ đầu tiên gán giá trị cho thuộc tính văn bản của hộp văn bản Đây là một cách tuyệt vời để hiển thị thông tin tới người dùng – nó được sử dụng thay vì luôn luôn xổ ra một hộp thông báo
Bắt đầu một ứng dụng Window mới và đặt tên nó là SetProperties (đặt thuộc tính) Thêm hai hộp văn bản và một nút lệnh vào Form1 Sử dụng cửa sổ thuộc tính để đặt thuộc tính Text (văn bản) của Button1 thành "Set Text" (cài đặt thuộc tính văn bản) Xoá nội dung văn bản của thuộc tính Text của cả TextBox1 và TextBox2 bằng cách nhấp đúp vào thuộc tính Text của chúng và nhấn phím backspace Nhấp đúp vào Button1 để soạn thảo mã lệnh cho sự kiện nhấn chuột, và thêm dòng mã lệnh sau vào thủ tục xử lý sự kiện:
TextBox2.Text = TextBox1.Text
Dịch và chạy chương trình Nhập văn bản vào TextBox1 và nhấn nút "Set Text" Điều gì xảy ra? Như bạn có thể thấy văn bản ở trong TextBox1 được “chép” sang TextBox2 Thuộc tính Text của TextBox2 được gán giá trị của thuộc tính Text của TextBox1 Mã lệnh Visual Basic.NET đọc thuộc tính Text của TextBox1 và sau đó dùng giá trị này gán cho thuộc tính Text của TextBox2
Hãy thêm mã lệnh sao cho ở thời điểm đầu tiên khi chạy chương trình Ô đánh dấu tự động thứ nhất được đánh dấu và Ô đánh dấu thứ hai thì không bị đánh dấu Thêm điều khiển Ô đánh dấu vào Form1 và sử dụng cửa sổ thuộc tính để đặt thuộc tính Text của nó là "Rush Job" (công việc gấp) Thêm một Ô đánh dấu vào Form1 và sử dụng cửa sổ thuộc tính để đặt thuộc tính Text của nó là "Whenever" (bất cứ khi nào) Nhấp đúp vào Form1 (không nhấp đúp phải là vào CheckBox1hoặc CheckBox2) Điều này sẽ mở cửa sổ soạn thảo mã lệnh cho
sự kiện Form1_Load (sự kiện nạp form) của Form1 Mã lệnh được viết trong thủ tục xử lý sự
Trang 39kiện nạp Form được thi hành tại lần đầu tiên khi form được tạo ra và hiển thị, trước bất cứ
mã lệnh chương trình nào khác được thực hiện Thêm vào hai dòng lệnh sau:
CheckBox1.Checked = True
CheckBox2.Checked = False
Dịch và chạy chương trình Ô đánh dấu nào
được đánh dấu? mã lệnh của bạn tự động cài đặt
thuộc tính Checked (đánh dấu) cho hai ô đánh dấu
khi nạp form
Hãy sử dụng mã lệnh để tự động chọn 14 trong
danh sách cỡ lốp của hộp danh sách đổ xuống
Trước tiên, thêm một hộp danh sách đổ xuống vào
Form1 Sử dụng cửa sổ thuộc tính để cài đặt các
mục trong danh sách của nó là 12,13,14,15, 16
Nhấn phím Enter để tạo dòng mới cho từng mục
trong danh sách Nhấp đúp vào Form1 (không
phải là vào ComboBox1) để soạn thảo mã lệnh
cho sự kiện nạp Form Thêm dòng mã lệnh sau:
ComboBox1.SelectedItem = "14"
4 IntelliSense và dấu chấm
IntelliSense hay còn gọi là cơ chế nhận biết thông minh Nó là một bộ phận của Visual Studio Nó giúp bạn tiết kiệm rất nhiều thời gian trong việc viết mã lệnh Nó biết bạn đang làm việc với điều khiển nào và các thuộc tính của điều khiển đó Nó hiển thị danh sách thuộc tính và cho phép bạn chọn thuộc tính mà bạn muốn sử dụng Thuộc tính được sử dụng phổ biến nhất sẽ được làm sáng lên khi được hiển thị trong danh sách
Ví dụ, thuộc tính Text của hộp văn bản được sáng lên đầu tiên Sử dụng mũi tên lên và xuống để tìm thuộc tính mà bạn cần Khi bạn nhấn phím Tab, nó thêm thuộc tính vào mã lệnh của bạn Với IntelliSense bạn không cần phải nhớ tất cả các thuộc tính của tất cả các điều khiển Nó giúp bạn tránh được việc phải gõ rất nhiều mã lệnh
Tạo một ứng dụng Window đặt tên là
IntelliSense Thêm một hộp văn bản và
một nút lệnh vào Form1 Nhấp đúp vào
nút lệnh để soạn thảo mã lệnh cho sự kiện
nhấp chuột của nút lệnh Button1
chấm (.) (đừng quên dấu chấm)
Ngay khi bạn gõ dấu chấm,
IntelliSense sẽ hiển thị danh sách
thuộc tính của TextBox1 Vì
TextBox1 là hộp văn bản, danh sách
Trang 40này giống như danh sách của hộp văn
bản bất kỳ mà bạn thêm vào form
Mặc định thuộc tính được chọn trong
danh sách của IntelliSense là thuộc
tính được sử dụng phổ biến nhất
Trong trường hợp này thuộc tính Text
được lựa chọn mặc định
chuyển đến thuộc tính đầu tiên trong
nhóm thuộc tính bắt đầu bởi chữ “R”
của danh sách Khi bạn gõ chữ,
IntelliSense tìm thuộc tính đối sánh
sát nhất với những chữ bạn
đã gõ vào
dọc theo danh sách và định vị lại
thuộc tính Text Chọn thuộc tính
Text
TextBox1 bây giờ gõ ="Ví dụ" Bây giờ mã lệnh là:
TextBox1.Text = "Ví dụ"