• Like
BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT
Upcoming SlideShare
Loading in...5
×

BÀI 4: Lệnh lựa chọn và quy trình phát triển phần mềm - Giáo trình FPT

  • 307 views
Uploaded on

Biết cách sử dụng CheckBox và hộp thoại …

Biết cách sử dụng CheckBox và hộp thoại
Hiểu về các toán tử logic và sử dụng toán tử logic để kết
hợp nhiều điều kiện đơn
Hiểu và sử dụng lệnh đa lựa chọn Select Case
Hiểu về quy trình phát triển ứng dụng
Hiểu về cách tổ chức mã của Visual Basic

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
307
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
38
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. BÀI 4: LỆNH LỰA CHỌN & QUY TRÌNH PHÁT TRIỂN PHẦN MỀM
  • 2. Biến và cách sử dụng biến Lưu trữ dữ liệu trong bộ nhớ Toán tử số học và thứ tự ưu tiên của chúng Giải thuật và dùng mã giả để biểu diễn cho giải thuật Biều đồ hoạt động UML Câu lệnh lựa chọn If…Then và If…Then…Else Thiết lập các breakpoint và sử dụng cửa sổ Watch để gỡ lỗi Hệ thống bài cũ Biến và cách sử dụng biến Lưu trữ dữ liệu trong bộ nhớ Toán tử số học và thứ tự ưu tiên của chúng Giải thuật và dùng mã giả để biểu diễn cho giải thuật Biều đồ hoạt động UML Câu lệnh lựa chọn If…Then và If…Then…Else Thiết lập các breakpoint và sử dụng cửa sổ Watch để gỡ lỗi Lệnh đa lựa chọn và quy trình phát triển phần mềm 2
  • 3. Mục tiêu bài học Biết cách sử dụng CheckBox và hộp thoại Hiểu về các toán tử logic và sử dụng toán tử logic để kết hợp nhiều điều kiện đơn Hiểu và sử dụng lệnh đa lựa chọn Select Case Hiểu về quy trình phát triển ứng dụng Hiểu về cách tổ chức mã của Visual Basic Biết cách sử dụng CheckBox và hộp thoại Hiểu về các toán tử logic và sử dụng toán tử logic để kết hợp nhiều điều kiện đơn Hiểu và sử dụng lệnh đa lựa chọn Select Case Hiểu về quy trình phát triển ứng dụng Hiểu về cách tổ chức mã của Visual Basic Lệnh đa lựa chọn và quy trình phát triển phần mềm 3
  • 4. CheckBox CheckBox trên ToolBox Lệnh đa lựa chọn và quy trình phát triển phần mềm 4 CheckBox được thêm vào ứng dụng Nhãn của CheckBox
  • 5. CheckBox CheckBox có hai trạng thái là được chọn (checked) và không được chọn (unchecked) Kiểm soát trạng thái của CheckBox bằng thuộc tính Checked CheckBox chưa được chọn. Thuộc tính Checked có giá trị là False Lệnh đa lựa chọn và quy trình phát triển phần mềm 5 CheckBox chưa được chọn. Thuộc tính Checked có giá trị là False CheckBox được chọn. Thuộc tính Checked có giá trị True
  • 6. CheckBox Thuộc tính quan trọng Autosize - Cho phép tự động điều chỉnh kích thước của CheckBox. Checked - Chỉ định CheckBox này được chọn (True) hay không được chọn (False) Location - Chỉ định vị trí của CheckBox ở trên Form. Name - Chỉ ra tên được sử dụng để truy cập CheckBox trong khi lập trình. Tên nên có hậu tố CheckBox vào phía sau. Size - Chỉ ra chiều rộng và chiều cao (bằng pixel) của CheckBox. Text - Chỉ ra nội dung được hiển thị bên cạnh CheckBox. Thuộc tính quan trọng Autosize - Cho phép tự động điều chỉnh kích thước của CheckBox. Checked - Chỉ định CheckBox này được chọn (True) hay không được chọn (False) Location - Chỉ định vị trí của CheckBox ở trên Form. Name - Chỉ ra tên được sử dụng để truy cập CheckBox trong khi lập trình. Tên nên có hậu tố CheckBox vào phía sau. Size - Chỉ ra chiều rộng và chiều cao (bằng pixel) của CheckBox. Text - Chỉ ra nội dung được hiển thị bên cạnh CheckBox. Lệnh đa lựa chọn và quy trình phát triển phần mềm 6
  • 7. Demo sử dụng CheckBox Thêm CheckBox vào Form Tùy chỉnh CheckBox Lệnh đa lựa chọn và quy trình phát triển phần mềm 7
  • 8. Hộp thoại Sử dụng để hiển thị thông báo hướng dẫn hay hiển thị thông báo lỗi cho người dùng Được định nghĩa bởi lớp MessageBox Sử dụng phương thức MessageBox.Show để hiển thị Sử dụng để hiển thị thông báo hướng dẫn hay hiển thị thông báo lỗi cho người dùng Được định nghĩa bởi lớp MessageBox Sử dụng phương thức MessageBox.Show để hiển thị Lệnh đa lựa chọn và quy trình phát triển phần mềm 8
  • 9. Hộp thoại Có nhiều phiên bản hàm Show với số đối số khác nhau để tùy chỉnh hộp thoại MessageBox.Show( _ “Hãy nhập tên của bạn vào", _ “Thiếu thông tin", MessageBoxButtons.OK, _ MessageBoxIcon.Error) Nội dung văn bản hiển thị trên hộp thoại Có nhiều phiên bản hàm Show với số đối số khác nhau để tùy chỉnh hộp thoại Lệnh đa lựa chọn và quy trình phát triển phần mềm 9 MessageBox.Show( _ “Hãy nhập tên của bạn vào", _ “Thiếu thông tin", MessageBoxButtons.OK, _ MessageBoxIcon.Error) Nội dung trên thanh tiêu đề Button được hiển thị trên hộp thoại Biểu tượng xuất hiện trên hộp thoại
  • 10. Các hằng MessageBoxButtons Hằng MessageBoxButtons Mô tả MessageBoxButtons.OK Button OK. Cho phép người dùng hồi đáp lại ứng dụng rằng đã nhận thông báo. MessageBoxButtons.OKCancel Button OK và Cancel. Cho phép người dùng tiếp tục hay bỏ qua một hành động. MessageBoxButtons.YesNo Button Yes và No. Cho phép người dùng hồi đáp lại câu hỏi MessageBoxButtons. YesNoCancel Button Yes, No và Cancel. Cho phép người dùng trả lời câu hỏi hoặc bỏ qua. MessageBoxButtons. YesNoCancel Button Yes, No và Cancel. Cho phép người dùng trả lời câu hỏi hoặc bỏ qua. MessageBoxButtons. RetryCancel Button Retry và Cancel. Cho phép người dùng thử lại hoặc bỏ qua một thao tác vừa thất bại. MessageBoxButtons. AbortRetryIgnore Button Abort, Retry và Ignore. Khi một thao tác trong một dãy các thao tác thất bại, những Button này cho phép người dùng dừng toàn bộ dãy thao tác, hoặc thử thực hiện lại thao tác thất bại hoặc bỏ qua thao tác thất bại và tiếp tục thực hiện những thao tác còn lại. Lệnh đa lựa chọn và quy trình phát triển phần mềm 10
  • 11. Các hằng MessageBoxIcon Hằng MessageBoxIcon Biểu tượng Mô tả MessageBoxIcon. Exclamation Biểu tượng này chứa hình dấu chấm than. Được dùng để cảnh báo cho người dùng về vấn đề có thể xảy ra. MessageBoxIcon. Information Biểu tượng này chứa chữ “i”. Được dùng để hiển thị thông tin về trạng thái của ứng dụng. Biểu tượng này chứa chữ “i”. Được dùng để hiển thị thông tin về trạng thái của ứng dụng. MessageBoxIcon. None Không có biểu tượng nào được hiển thị. MessageBoxIcon. Error Biểu tượng này chứa dấu x màu trắng trong hình tròn màu đỏ. Dùng để cảnh báo người sử dụng về lỗi hoặc một tình huống nghiêm trọng. Lệnh đa lựa chọn và quy trình phát triển phần mềm 11
  • 12. Demo sử dụng hộp thoại Thay đổi giá trị đối số thứ tư Icon hiển thị khác nhau Lệnh đa lựa chọn và quy trình phát triển phần mềm 12 Thay đổi giá trị đối số thứ tư Icon hiển thị khác nhau
  • 13. Toán tử logic Điều kiện đơn x <= 10 y > 10 Toán tử logic kết hợp các điều kiện đơn thành điều kiện phức tạp hơn And AndAlso Or OrElse Xor Not Điều kiện đơn x <= 10 y > 10 Toán tử logic kết hợp các điều kiện đơn thành điều kiện phức tạp hơn And AndAlso Or OrElse Xor Not Lệnh đa lựa chọn và quy trình phát triển phần mềm 13
  • 14. Toán tử AndAlso Có giá trị là True khi và chỉ khi hai điều kiện đơn cùng đúng If gioiTinhTextBox.Text = “Nu” AndAlso tuoi> = 65 Then soPhuNuCaoTuoi += 1 End If Nếu gioiTinhextBox.Text có giá trị là “Nu” và tuoi có giá trị lớn hơn hoặc bằng 65 thì biến soPhuNuCaoTuoi được tăng thêm 1. Nêu không, bỏ qua lệnh này Lệnh đa lựa chọn và quy trình phát triển phần mềm 14 Nếu gioiTinhextBox.Text có giá trị là “Nu” và tuoi có giá trị lớn hơn hoặc bằng 65 thì biến soPhuNuCaoTuoi được tăng thêm 1. Nêu không, bỏ qua lệnh này
  • 15. Bảng sự thật của toán tử AndAlso Biểu thức ĐK 1 Biểu thức ĐK 2 Biểu thức ĐK 1 AndAlso Biểu thức ĐK 2 False False False False True FalseFalse True False True False False True True True Lệnh đa lựa chọn và quy trình phát triển phần mềm 15
  • 16. Toán tử OrElse Có giá trị là True khi một hoặc cả hai điều kiện đơn đúng Bài toán: Một sinh viên sẽ đạt điểm A của kỳ đó nếu điểm thi cuối kỳ >=90 hoặc điểm trung bình của cả kỳ >= 90 If (diemTrungBinh >= 90) OrElse (diemThiCuoiKy >= 90) Then MessageBox.Show(“Sinh vien co so diem la A”, “Diem” MessageBoxButtons.OK, MessageBoxIcon.Information) End If Lệnh đa lựa chọn và quy trình phát triển phần mềm 16 If (diemTrungBinh >= 90) OrElse (diemThiCuoiKy >= 90) Then MessageBox.Show(“Sinh vien co so diem la A”, “Diem” MessageBoxButtons.OK, MessageBoxIcon.Information) End If
  • 17. Bảng sự thật của toán tử OrElse Biểu thức ĐK 1 Biểu thức ĐK 2 Biểu thức ĐK 1 OrElse Biểu thức ĐK 2 False False False False True True Lệnh đa lựa chọn và quy trình phát triển phần mềm 17 False True True True False True True True True
  • 18. Đánh giá theo cơ chế tối ưu Thực hiện đánh giá cho đến khi biết giá trị của nó là đúng hay sai thì dừng lại Toán tử AndAlso và OrElse được đánh giá theo cơ chế tối ưu Toán tử And và Or không đánh giá theo cơ chế tối ưu If (gioiTinhTextBox.Text = “Nu”) AndAlso (tuoi>= 65) Nếu gioiTinhTextBox.Text có giá trị khác “Nu” thì dừng là và trả về False Thực hiện đánh giá cho đến khi biết giá trị của nó là đúng hay sai thì dừng lại Toán tử AndAlso và OrElse được đánh giá theo cơ chế tối ưu Toán tử And và Or không đánh giá theo cơ chế tối ưu Lệnh đa lựa chọn và quy trình phát triển phần mềm 18 Nếu gioiTinhTextBox.Text có giá trị khác “Nu” thì dừng là và trả về False If (diemTrungBinh >= 90) OrElse (diemThiCuoiKy >= 90) Nếu diemTrungBinh có giá trị lớn hoặc bằng 90 thì dừng là và trả về True
  • 19. Toán tử Xor Có giá trị là True khi và chỉ khi một toán hạng của nó có giá trị True và toán hạng còn lại có giá trị False Nếu tất cả toán hạng có giá trị False hoặc tất cả các toán hạng có giá trị True thì toán bộ biểu thức có giá trị False Biểu thức ĐK 1 Biểu thức ĐK 2 Biểu thức ĐK 1 Xor Biểu thức ĐK 2 Xử lý sự kiện, biến và phép toán trong lập trình 19 Biểu thức ĐK 1 Biểu thức ĐK 2 Biểu thức ĐK 1 Xor Biểu thức ĐK 2 False False False False True True True False True True True False
  • 20. Toán tử Not Là toán tử một ngôi Đảo ngược giá trị logic của điều kiện If Not (diem = value) Then hienthiLabel.Text = “chúng không bằng nhau” End If Lệnh đa lựa chọn và quy trình phát triển phần mềm 20 Biểu thức ĐK Giá trị nghịch đảo của biểu thức ĐK False True True False
  • 21. Lệnh đa lựa chọn Select Case Hiển thị thông báo dựa trên điểm của sinh viên If diem = “A” Then hienthiLabel.Text = “Tuyet voi!” If diem = “B” Then hienthiLabel.Text = “Rat tot!” If diem = “C” Then hienthiLabel.Text = “Tot.” If diem = “D” Then hienthiLabel.Text = “Kem.” If diem = “F” Then hienthiLabel.Text = “Truot.” Else hienthiLabel.Text = “Diem khong hop le.” End If Trong trường hợp diem bằng “A” thì hiển thị “Tuyet voi!” Select Case diem Case “A” hienthiLabel.Text = “Tuyet voi!” Case “B” hienthiLabel.Text = “Rat tot!” Case “C” hienthiLabel.Text = “Tot.” Case “D” hienthiLabel.Text = “Kem.” Case “F” hienthiLabel.Text = “Truot.” Case Else hienthiLabel.Text = “Diem khong hop le.” End Select Nếu diem bằng “A” thì hiển thị “Tuyet voi!” Hiển thị thông báo dựa trên điểm của sinh viên Lệnh đa lựa chọn và quy trình phát triển phần mềm 21 If diem = “A” Then hienthiLabel.Text = “Tuyet voi!” If diem = “B” Then hienthiLabel.Text = “Rat tot!” If diem = “C” Then hienthiLabel.Text = “Tot.” If diem = “D” Then hienthiLabel.Text = “Kem.” If diem = “F” Then hienthiLabel.Text = “Truot.” Else hienthiLabel.Text = “Diem khong hop le.” End If Select Case diem Case “A” hienthiLabel.Text = “Tuyet voi!” Case “B” hienthiLabel.Text = “Rat tot!” Case “C” hienthiLabel.Text = “Tot.” Case “D” hienthiLabel.Text = “Kem.” Case “F” hienthiLabel.Text = “Truot.” Case Else hienthiLabel.Text = “Diem khong hop le.” End Select
  • 22. Lệnh đa lựa chọn Select Case Ký hiệu ghép kết hợp hai luồng hoạt động thành một luồng hiển thị “Tuyet voi!” [diem = “A” ] hiển thị “Rat tot!” [diem = “B” ] Case “A” Case “B” … Ký hiệu ghép Ký hiệu ra quyết định Ký hiệu ghép kết hợp hai luồng hoạt động thành một luồng Lệnh đa lựa chọn và quy trình phát triển phần mềm 22 hiển thị “Truot.” hiển thị “Diem khong hop le.” [diem = “F” ] [diem <> “F” ] Case “F” …
  • 23. Mệnh đề Case Else Là mệnh đề không bắt buộc trong lệnh Case Được thực thi khi không có mệnh đề Case nào đúng Mệnh đề Case Else phải nằm sau tất cả các mệnh đề Case khác Mỗi lệnh Select Case chỉ có một mệnh đề Case Else Select Case diem Case “A” hienthiLabel.Text = “Tuyet voi!” Case “B”, “C” hienthiLabel.Text = “Tot!” Case “D” hienthiLabel.Text = “Kem.” Case “F” hienthiLabel.Text = “Truot.” Case Else hienthiLabel.Text = “Diem khong hop le” End Select Lệnh đa lựa chọn và quy trình phát triển phần mềm 23 Select Case diem Case “A” hienthiLabel.Text = “Tuyet voi!” Case “B”, “C” hienthiLabel.Text = “Tot!” Case “D” hienthiLabel.Text = “Kem.” Case “F” hienthiLabel.Text = “Truot.” Case Else hienthiLabel.Text = “Diem khong hop le” End Select Mệnh đề Case Else
  • 24. Nhiều giá trị trong mệnh đề Case Có thể có nhiều giá trị trong một mệnh đề Case Select Case diem Case “A” hienthiLabel.Text = “Tuyet voi!” Case “B”, “C” hienthiLabel.Text = “Tot.” Case “D” hienthiLabel.Text = “Kem.” Case “F” hienthiLabel.Text = “Truot” Case Else hienthiLabel.Text = “Diem khong hop le.” End Select Lệnh đa lựa chọn và quy trình phát triển phần mềm 24 Select Case diem Case “A” hienthiLabel.Text = “Tuyet voi!” Case “B”, “C” hienthiLabel.Text = “Tot.” Case “D” hienthiLabel.Text = “Kem.” Case “F” hienthiLabel.Text = “Truot” Case Else hienthiLabel.Text = “Diem khong hop le.” End Select Các giá trị được phân tách bởi dấu phầy
  • 25. Từ khóa Is Từ khóa Is đi trước toán tử quan hệ hay toán tử bằng được dùng để so sánh biểu thức điều khiển với giá trị bên phải của toán tử Select Case diem Case Is >= 90 hienthiLabel.Text = “Tuyet voi!” Case Is >= 80 hienthiLabel.Text = “Rat tot!” Case Is >= 70 hienthiLabel.Text = “Tot.” Case Is >= 50 hienthiLabel.Text = “Kem.” Case Else hienthiLabel.Text = “Diem khong hop le” End Select Lệnh đa lựa chọn và quy trình phát triển phần mềm 25 Select Case diem Case Is >= 90 hienthiLabel.Text = “Tuyet voi!” Case Is >= 80 hienthiLabel.Text = “Rat tot!” Case Is >= 70 hienthiLabel.Text = “Tot.” Case Is >= 50 hienthiLabel.Text = “Kem.” Case Else hienthiLabel.Text = “Diem khong hop le” End Select Từ khóa Is đi trước toán tử quan hệ
  • 26. Từ khóa To Từ khóa To xác định một khoảng giá trị Select Case diem Case Is >= 90 hienthiLabel.Text = “Tuyet voi!” Case 70 To 89 hienthiLabel.Text = “Tot!” Case Is >= 50 hienthiLabel.Text = “Kem.” Case Else hienthiLabel.Text = “Truot” End Select Từ khóa To xác định khoảng giá trị từ 70 đến 89 Lệnh đa lựa chọn và quy trình phát triển phần mềm 26 Select Case diem Case Is >= 90 hienthiLabel.Text = “Tuyet voi!” Case 70 To 89 hienthiLabel.Text = “Tot!” Case Is >= 50 hienthiLabel.Text = “Kem.” Case Else hienthiLabel.Text = “Truot” End Select Từ khóa To xác định khoảng giá trị từ 70 đến 89
  • 27. Datagridview và sơ lược về đọc file Lệnh đa lựa chọn và quy trình phát triển phần mềm 27
  • 28. Datagridview và sơ lược về đọc file Đọc dữ liệu từ file và đưa vào DataGridView Ví dụ: Dim danhSach() As String danhSach = File.ReadAllLines("QuestionList.txt") Dim i As Integer For i = 0 To danhSach.Length - 1 danhSach(i) = (i + 1).ToString() & ControlChars.Tab & danhSach(i) DataGridView1.Rows.Add(danhSach(i).Split(ControlChars.Tab)) Next Đọc dữ liệu từ file và đưa vào DataGridView Ví dụ: Dim danhSach() As String danhSach = File.ReadAllLines("QuestionList.txt") Dim i As Integer For i = 0 To danhSach.Length - 1 danhSach(i) = (i + 1).ToString() & ControlChars.Tab & danhSach(i) DataGridView1.Rows.Add(danhSach(i).Split(ControlChars.Tab)) Next Lệnh đa lựa chọn và quy trình phát triển phần mềm 28
  • 29. Quy trình phát triển ứng dụng Bước 1. Xác định yêu cầu Một phòng thí nghiệm muốn lắp đặt bảng an ninh phía ngoài phòng. Chỉ nhân viên được cho phép mới có thể vào trong phòng bằng cách sử dụng mã bảo mật. Sau đây là các mã bảo mật hợp lệ (còn được gọi là mã truy cập) và các nhóm nhân viên tương ứng: Giá trị Nhóm 1645-1689 Kỹ thuật viên 8345 Nhân viên tạp vụ 9998, 1006-1008 Nhà khoa học Mỗi khi nhập mã bảo mật, truy cập sẽ được chấp nhận hoặc bị từ chối. Thông tin mỗi lần truy cập đều được ghi vào cửa sổ bên dưới bàn phím. Nếu truy cập được chấp nhận thì thông tin về thời gian truy cập và nhóm (nhà khoa học, nhân viên tạp vụ, v.v…) được ghi vào cửa sổ. Nếu truy cập bị từ chối thì thông tin về thời gian và thông báo “Access Denied” sẽ được ghi vào cửa sổ. Ngoài ra, người dùng có thể nhập mã truy cập là một chữ số bất kỳ để yêu cầu nhân viên bảo vệ đến trợ giúp. Sau đó, thông tin về ngày tháng, thời gian và thông báo “Yêu cầu được trợ giúp” cũng được ghi vào cửa sổ để xác định yêu cầu đã được tiếp nhận. Lệnh đa lựa chọn và quy trình phát triển phần mềm 29 Một phòng thí nghiệm muốn lắp đặt bảng an ninh phía ngoài phòng. Chỉ nhân viên được cho phép mới có thể vào trong phòng bằng cách sử dụng mã bảo mật. Sau đây là các mã bảo mật hợp lệ (còn được gọi là mã truy cập) và các nhóm nhân viên tương ứng: Giá trị Nhóm 1645-1689 Kỹ thuật viên 8345 Nhân viên tạp vụ 9998, 1006-1008 Nhà khoa học Mỗi khi nhập mã bảo mật, truy cập sẽ được chấp nhận hoặc bị từ chối. Thông tin mỗi lần truy cập đều được ghi vào cửa sổ bên dưới bàn phím. Nếu truy cập được chấp nhận thì thông tin về thời gian truy cập và nhóm (nhà khoa học, nhân viên tạp vụ, v.v…) được ghi vào cửa sổ. Nếu truy cập bị từ chối thì thông tin về thời gian và thông báo “Access Denied” sẽ được ghi vào cửa sổ. Ngoài ra, người dùng có thể nhập mã truy cập là một chữ số bất kỳ để yêu cầu nhân viên bảo vệ đến trợ giúp. Sau đó, thông tin về ngày tháng, thời gian và thông báo “Yêu cầu được trợ giúp” cũng được ghi vào cửa sổ để xác định yêu cầu đã được tiếp nhận.
  • 30. Quy trình phát triển ứng dụng Bước 2. Thiết kế ứng dụng Thiết kế giao diện cho ứng dụng Ký tự ngụy trang được hiển thị tuy nhiên giá trị Text của TextBox vẫn chứa giá trị do người dùng nhập vào Thiết lập thuộc tính PasswordChar là * để ẩn mã truy cập Bước 2. Thiết kế ứng dụng Thiết kế giao diện cho ứng dụng Ký tự ngụy trang được hiển thị tuy nhiên giá trị Text của TextBox vẫn chứa giá trị do người dùng nhập vào Lệnh đa lựa chọn và quy trình phát triển phần mềm 30 Thiết lập thuộc tính PasswordChar là * để ẩn mã truy cập
  • 31. Quy trình phát triển ứng dụng Thiết kế giải thuật cho ứng dụng Nếu người dùng nhấn Button # thì Lấy giá trị mã an ninh do người dùng nhập vào Xóa nội dung trên TextBox Chọn trường hợp đúng dựa trên mã truy cập Trong trường hợp mã truy cập nhỏ hơn 10 Lưu văn bản “Assistance Requested” vào biến String Trong trường hợp mã truy cập nằm trong dãy 1645 đến 1689 Lưu văn bản “Technicians” vào biến String Trong trường hợp mã truy cập bằng 8345 Lưu văn bản “Costodians” vào biến String Trong trường hợp mã truy cập bằng 9998 hoặc trong dãy 1006 đến 1008 Lưu văn bản “Scientists” vào biến String Trong trường hợp không rơi vào các trường hợp trên Lưu văn bản “Access Denied” vào biến String Kết thúc lệnh Chọn Thêm thông báo chứa thời gian hiện thời và nội dung của biến String vào nội dung hiển thị của ListBox Kết thúc lệnh Nếu Lệnh đa lựa chọn và quy trình phát triển phần mềm 31 Nếu người dùng nhấn Button # thì Lấy giá trị mã an ninh do người dùng nhập vào Xóa nội dung trên TextBox Chọn trường hợp đúng dựa trên mã truy cập Trong trường hợp mã truy cập nhỏ hơn 10 Lưu văn bản “Assistance Requested” vào biến String Trong trường hợp mã truy cập nằm trong dãy 1645 đến 1689 Lưu văn bản “Technicians” vào biến String Trong trường hợp mã truy cập bằng 8345 Lưu văn bản “Costodians” vào biến String Trong trường hợp mã truy cập bằng 9998 hoặc trong dãy 1006 đến 1008 Lưu văn bản “Scientists” vào biến String Trong trường hợp không rơi vào các trường hợp trên Lưu văn bản “Access Denied” vào biến String Kết thúc lệnh Chọn Thêm thông báo chứa thời gian hiện thời và nội dung của biến String vào nội dung hiển thị của ListBox Kết thúc lệnh Nếu
  • 32. Quy trình phát triển ứng dụng Bước 3. Viết mã (coding) Viết mã dựa theo phân tích ở bước 3 Lệnh đa lựa chọn và quy trình phát triển phần mềm 32
  • 33. Demo viết mã ứng dụng Public Class SecurityPanelForm ' xử lý sự kiện Click cho Button enterButton Private Sub enterButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles enterButton.Click Dim accessCode As Integer ' lưu mã truy cập được nhập vào Dim message As String ' hiển thị trạng thái truy cập accessCode = Val(securityCodeTextBox.Text) securityCodeTextBox.Clear() Select Case accessCode ' kiểm tra mã truy cập Case Is < 10 ' mã truy cập bé hơn 10 message = "Assistance Requested" Case 1645 To 1689 ' mã truy cập nằm giữa 1645 và 1689 message = "Technicians" Case 8345 ' mã truy cập bằng 8345 message = "Custodians" Case 9998, 1006 To 1008 ' 9998 hoặc nằm giữa 1006 và 1008 message = "Scientists" Case Else ' nếu không có trường hợp nào ở trên đúng message = "Access Denied" End Select ' hiển thị thời gian và thông báo trên ListBox logEntryListBox.Items.Insert(0, Date.Now & " " & message) End Sub ' enterButton_Click Lệnh đa lựa chọn và quy trình phát triển phần mềm 33 Public Class SecurityPanelForm ' xử lý sự kiện Click cho Button enterButton Private Sub enterButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles enterButton.Click Dim accessCode As Integer ' lưu mã truy cập được nhập vào Dim message As String ' hiển thị trạng thái truy cập accessCode = Val(securityCodeTextBox.Text) securityCodeTextBox.Clear() Select Case accessCode ' kiểm tra mã truy cập Case Is < 10 ' mã truy cập bé hơn 10 message = "Assistance Requested" Case 1645 To 1689 ' mã truy cập nằm giữa 1645 và 1689 message = "Technicians" Case 8345 ' mã truy cập bằng 8345 message = "Custodians" Case 9998, 1006 To 1008 ' 9998 hoặc nằm giữa 1006 và 1008 message = "Scientists" Case Else ' nếu không có trường hợp nào ở trên đúng message = "Access Denied" End Select ' hiển thị thời gian và thông báo trên ListBox logEntryListBox.Items.Insert(0, Date.Now & " " & message) End Sub ' enterButton_Click
  • 34. Demo viết mã ứng dụng ' xử lý sự kiện Click cho Button zeroButton Private Sub zeroButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles zeroButton.Click securityCodeTextBox.Text &= "0" ' nối thêm "0" để hiển thị End Sub ' zeroButton_Click ' xử lý sự kiện Click của Button oneButton Private Sub oneButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles oneButton.Click securityCodeTextBox.Text &= "1" ' nối thêm "1" để hiển thị End Sub ' oneButton_Click ' xử lý sự kiện Click của Button twoButton Private Sub twoButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles twoButton.Click securityCodeTextBox.Text &= "2" 'nối thêm "2" để hiển thị End Sub ' twoButton_Click ' xử lý sự kiện Click của Button threeButton Private Sub threeButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles threeButton.Click securityCodeTextBox.Text &= "3" 'nối thêm "3" để hiển thị End Sub ' threeButton_Click Lệnh đa lựa chọn và quy trình phát triển phần mềm 34 ' xử lý sự kiện Click cho Button zeroButton Private Sub zeroButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles zeroButton.Click securityCodeTextBox.Text &= "0" ' nối thêm "0" để hiển thị End Sub ' zeroButton_Click ' xử lý sự kiện Click của Button oneButton Private Sub oneButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles oneButton.Click securityCodeTextBox.Text &= "1" ' nối thêm "1" để hiển thị End Sub ' oneButton_Click ' xử lý sự kiện Click của Button twoButton Private Sub twoButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles twoButton.Click securityCodeTextBox.Text &= "2" 'nối thêm "2" để hiển thị End Sub ' twoButton_Click ' xử lý sự kiện Click của Button threeButton Private Sub threeButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles threeButton.Click securityCodeTextBox.Text &= "3" 'nối thêm "3" để hiển thị End Sub ' threeButton_Click
  • 35. Demo viết mã ứng dụng ' xử lý sự kiện Click của Button fourButton Private Sub fourButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fourButton.Click securityCodeTextBox.Text &= "4" 'nối thêm "4" để hiển thị End Sub ' fourButton_Click ' xử lý sự kiện Click của Button fiveButton Private Sub fiveButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fiveButton.Click securityCodeTextBox.Text &= "5" 'nối thêm "5" để hiển thị End Sub ' fiveButton_Click ' xử lý sự kiện Click của Button sixButton Private Sub sixButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sixButton.Click securityCodeTextBox.Text &= "6" 'nối thêm "6" để hiển thị End Sub ' sixButton_Click ' xử lý sự kiện Click của Button sevenButton Private Sub sevenButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sevenButton.Click Lệnh đa lựa chọn và quy trình phát triển phần mềm 35 ' xử lý sự kiện Click của Button fourButton Private Sub fourButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fourButton.Click securityCodeTextBox.Text &= "4" 'nối thêm "4" để hiển thị End Sub ' fourButton_Click ' xử lý sự kiện Click của Button fiveButton Private Sub fiveButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fiveButton.Click securityCodeTextBox.Text &= "5" 'nối thêm "5" để hiển thị End Sub ' fiveButton_Click ' xử lý sự kiện Click của Button sixButton Private Sub sixButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sixButton.Click securityCodeTextBox.Text &= "6" 'nối thêm "6" để hiển thị End Sub ' sixButton_Click ' xử lý sự kiện Click của Button sevenButton Private Sub sevenButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sevenButton.Click
  • 36. Demo viết mã ứng dụng ' xử lý sự kiện Click của Button fourButton Private Sub fourButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fourButton.Click securityCodeTextBox.Text &= "4" 'nối thêm "4" để hiển thị End Sub ' fourButton_Click ' xử lý sự kiện Click của Button fiveButton Private Sub fiveButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fiveButton.Click securityCodeTextBox.Text &= "5" 'nối thêm "5" để hiển thị End Sub ' fiveButton_Click ' xử lý sự kiện Click của Button sixButton Private Sub sixButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sixButton.Click securityCodeTextBox.Text &= "6" 'nối thêm "6" để hiển thị End Sub ' sixButton_Click ' xử lý sự kiện Click của Button sevenButton Private Sub sevenButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sevenButton.Click Lệnh đa lựa chọn và quy trình phát triển phần mềm 36 ' xử lý sự kiện Click của Button fourButton Private Sub fourButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fourButton.Click securityCodeTextBox.Text &= "4" 'nối thêm "4" để hiển thị End Sub ' fourButton_Click ' xử lý sự kiện Click của Button fiveButton Private Sub fiveButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles fiveButton.Click securityCodeTextBox.Text &= "5" 'nối thêm "5" để hiển thị End Sub ' fiveButton_Click ' xử lý sự kiện Click của Button sixButton Private Sub sixButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sixButton.Click securityCodeTextBox.Text &= "6" 'nối thêm "6" để hiển thị End Sub ' sixButton_Click ' xử lý sự kiện Click của Button sevenButton Private Sub sevenButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles sevenButton.Click
  • 37. Demo viết mã ứng dụng securityCodeTextBox.Text &= "7" 'nối thêm "7" để hiển thị End Sub ' sevenButton_Click ' xử lý sự kiện Click của Button eightButton Private Sub eightButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles eightButton.Click securityCodeTextBox.Text &= "8" 'nối thêm "8" để hiển thị End Sub ' eightButton_Click ' xử lý sự kiện Click của Button nineButton Private Sub nineButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles nineButton.Click securityCodeTextBox.Text &= "9" 'nối thêm "9" để hiển thị End Sub ' nineButton_Click ' xử lý sự kiện Click của Button clearButton Private Sub clearButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles clearButton.Click securityCodeTextBox.Clear() ' xóa nội dung trên TextBox End Sub ' clearButton_Click End Class ' SecurityPanelForm Lệnh đa lựa chọn và quy trình phát triển phần mềm 37 securityCodeTextBox.Text &= "7" 'nối thêm "7" để hiển thị End Sub ' sevenButton_Click ' xử lý sự kiện Click của Button eightButton Private Sub eightButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles eightButton.Click securityCodeTextBox.Text &= "8" 'nối thêm "8" để hiển thị End Sub ' eightButton_Click ' xử lý sự kiện Click của Button nineButton Private Sub nineButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles nineButton.Click securityCodeTextBox.Text &= "9" 'nối thêm "9" để hiển thị End Sub ' nineButton_Click ' xử lý sự kiện Click của Button clearButton Private Sub clearButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles clearButton.Click securityCodeTextBox.Clear() ' xóa nội dung trên TextBox End Sub ' clearButton_Click End Class ' SecurityPanelForm
  • 38. Quy trình phát triển ứng dụng Bước 4. Kiểm thử Chạy thử ứng dụng xem ứng dụng đã thỏa mãn yêu cầu đặt ra lúc đầu chưa Lệnh đa lựa chọn và quy trình phát triển phần mềm 38
  • 39. Mã do trình thiết kế tự sinh VB phân tách công việc thiết kết giao diện và thiết kế logic cho ứng dụng Mã thiết kế giao diện được VB tự sinh ra và đặt trong một file riêng VB phân tách công việc thiết kết giao diện và thiết kế logic cho ứng dụng Mã thiết kế giao diện được VB tự sinh ra và đặt trong một file riêng Lệnh đa lựa chọn và quy trình phát triển phần mềm 39
  • 40. Demo xem mã tự sinh Nhấn vào Button Show All Files trong cửa sổ Solution Explorer, nhấn đúp vào file có đuôi là Designer.vb để xem mã tự sinh Lệnh đa lựa chọn và quy trình phát triển phần mềm 40 Khai báo các biến điều khiển cho giao diện
  • 41. Demo xem mã tự sinh Thiết lập giá trị cho các thuộc tính của điều khiển Lệnh đa lựa chọn và quy trình phát triển phần mềm 41 Thiết lập giá trị cho các thuộc tính của điều khiển
  • 42. Giảng viên hướng dẫn sinh viên làm assignment Hướng dẫn làm Assignment Lệnh đa lựa chọn và quy trình phát triển phần mềm 42
  • 43. CheckBox cung cấp cho người dùng những tùy chọn được định nghĩa trước. Có thể kiểm tra xem CheckBox được chọn hay chưa bằng cách sử dụng thuộc tính Checked Hộp thoại được sử dụng để hiển thị thông báo cho người dùng. Sử dụng phương thức Show để hiển thị hộp thoại Visual Basic cung cấp một số các toán tử logic là AndAlso, OrElse, Xor, Not, And, Or để tạo ra các biểu thức phức tạp AndAlso và OrElse được đánh giá theo cơ chế tối ưu, trong khi And và Or thì đánh giá cả hai toán hạng Tổng kết bài học CheckBox cung cấp cho người dùng những tùy chọn được định nghĩa trước. Có thể kiểm tra xem CheckBox được chọn hay chưa bằng cách sử dụng thuộc tính Checked Hộp thoại được sử dụng để hiển thị thông báo cho người dùng. Sử dụng phương thức Show để hiển thị hộp thoại Visual Basic cung cấp một số các toán tử logic là AndAlso, OrElse, Xor, Not, And, Or để tạo ra các biểu thức phức tạp AndAlso và OrElse được đánh giá theo cơ chế tối ưu, trong khi And và Or thì đánh giá cả hai toán hạng Lệnh đa lựa chọn và quy trình phát triển phần mềm 43
  • 44. Lệnh Select Case thực hiện một hành động (chuỗi hành động) trong nhiều hành động (chuỗi hành động). Có thể sử dụng nhiều giá trị trong một mệnh đề Case bằng cách thêm dấu phẩy vào giữa các giá trị. Có thể sử dụng từ khóa Is và To trong mệnh đề Case Mệnh đề Case Else được thực hiện khi không có mệnh đề Case nào đúng Quy trình phát triển ứng dụng gồm 4 bước cơ bản: Phân tích, thiết kế, viết mã và kiểm thử Visual Basic phân tách mã thành hai phần: mã cho phần giao diện và mã cho phần logic ứng dụng. Mã giao diện do Visual Basic tự sinh và được để trong một file riêng Tổng kết bài học Lệnh Select Case thực hiện một hành động (chuỗi hành động) trong nhiều hành động (chuỗi hành động). Có thể sử dụng nhiều giá trị trong một mệnh đề Case bằng cách thêm dấu phẩy vào giữa các giá trị. Có thể sử dụng từ khóa Is và To trong mệnh đề Case Mệnh đề Case Else được thực hiện khi không có mệnh đề Case nào đúng Quy trình phát triển ứng dụng gồm 4 bước cơ bản: Phân tích, thiết kế, viết mã và kiểm thử Visual Basic phân tách mã thành hai phần: mã cho phần giao diện và mã cho phần logic ứng dụng. Mã giao diện do Visual Basic tự sinh và được để trong một file riêng Lệnh đa lựa chọn và quy trình phát triển phần mềm 44