bỘ mÔn duyỆt t bÀi gi ng t nhóm ch nhi m b môn (dùng...

57
BMÔN DUYT Chnhim Bmôn Nguyn Hiếu Minh ĐỀ CƢƠNG CHI TIẾT BÀI GI NG (Dùng cho 45 tiết ging) Hc phn: Ngôn nglp trình II Nhóm môn hc: Truyền thông MMT Bmôn:An ninh mng Khoa : CNTT Thay mt nhóm môn hc Nguyn Quang Uy Thông tin vnhóm môn hc TT Htên giáo viên Hc hàm Hc v1 Nguyn Quang Uy Ging viên chính Tiến sĩ 2 Hoàng Tun Ho Ging viên chính Tiến sĩ 3 Cao Văn Lợi Ging viên Thạc sĩ 4 Nguyn Trung Thành Ging viên Thạc sĩ 5 Nguyn Kim Thanh Ging viên KS 6 Nguyễn Văn Cường Ging viên KS Địa điểm làm vic: P1314 Nhà S4 - Bmôn An ninh mng Khoa CNTT Điện thoi, email: 0989149111; [email protected] Bài ging 1: Gii thiu v.Net Framework & Visual Basic.NET Chương I Mc 1.1 + 1.2 + 1.3 Tiết th: 1 - 3 Tun th: 1 - Mục đích, yêu cầu: - Nắm được sơ lược vhc phn, các yêu cu của giáo viên đối vi môn hc. - Nắm được các khái nim v.Net Framework và ngôn ngVB.Net; - Bcông cVisual Studio 2008/2010; - Các thành phn chính ca ngôn ngVB.Net; - Hình thc tchc dy hc: Lý thuyết, tho lun, thc, tnghiên cu - Thi gian: Lý thuyết, bài tp: 3t; Thc, tnghiên cu: 3t - Địa điểm: Gi ảng đường do P2 phân công. - Ni dung chính: 1.1. GII THIU V.NET FRAMEWORK & VISUAL BASIC .NET (1 tiết) - Môi trường phát trin - Các công cca VS.NET

Upload: others

Post on 27-Dec-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

BỘ MÔN DUYỆT

Chủ nhiệm Bộ môn

Nguyễn Hiếu Minh

ĐỀ CƢƠNG CHI TIẾT BÀI GIẢNG

(Dùng cho 45 tiết giảng)

Học phần: Ngôn ngữ lập trình II

Nhóm môn học: Truyền thông MMT

Bộ môn:An ninh mạng

Khoa : CNTT

Thay mặt nhóm

môn học

Nguyễn Quang Uy

Thông tin về nhóm môn học

TT Họ tên giáo viên Học hàm Học vị

1 Nguyễn Quang Uy Giảng viên chính Tiến sĩ

2 Hoàng Tuấn Hảo Giảng viên chính Tiến sĩ

3 Cao Văn Lợi Giảng viên Thạc sĩ

4 Nguyễn Trung Thành Giảng viên Thạc sĩ

5 Nguyễn Kim Thanh Giảng viên KS

6 Nguyễn Văn Cường Giảng viên KS

Địa điểm làm việc: P1314 Nhà S4 - Bộ môn An ninh mạng – Khoa CNTT

Điện thoại, email: 0989149111; [email protected]

Bài giảng 1: Giới thiệu về .Net Framework & Visual Basic.NET Chương I Mục 1.1 + 1.2 + 1.3

Tiết thứ: 1 - 3 Tuần thứ: 1

- Mục đích, yêu cầu:

- Nắm được sơ lược về học phần, các yêu cầu của giáo viên đối với môn học.

- Nắm được các khái niệm về .Net Framework và ngôn ngữ VB.Net;

- Bộ công cụ Visual Studio 2008/2010;

- Các thành phần chính của ngôn ngữ VB.Net;

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, bài tập: 3t; Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

1.1. GIỚI THIỆU VỀ .NET FRAMEWORK & VISUAL BASIC .NET

(1 tiết)

- Môi trường phát triển

- Các công cụ của VS.NET

Page 2: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Công cụ trong vs.NET rất phong phú. Bạn có thể khám phá từ từ. Sau đây

là mô phỏng màn hình làm việc của bộ vs.NET:

Bộ thiết kế Windows Forms Designer

VS.NET có một bộ thiết kế form trực quan, bạn sẽ làm quen dần dần bởi vì

thường trong các dự án phát triển có thể có rất nhiều Form.

Hiển thị bộ thiết kế Form

Góc phải màn hình là cửa sổ Solution Explorer. Hiển thị nó View | Solution

Explorer. Cửa sổ này chứa toàn bộ các phần tử có sd trong dự án.

Menu Bar

Tools

Box

Windows Form Designer

Standard Toolbar Solution Explorer

Properties Windows Output Windows

Page 3: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Double Click vào MusicTrivia.vb trong cửa sổ Solution Explorer bạn sẽ

thấy tất cả các file chứa form.

Nhắp chuột vào biểu tượng View Designer trong solution để hiển thị

form thiết kế ở dạng trực quan.

- Hướng dẫn sử dụng phần mềm.

Việc khởi động vs.NET cũng tương tự như các phần mềm khác như

ms.Word hay excel. Nếu lần đầu khởi động vs.NET sẽ yêu cầu xem bạn chạy nó

với ưu tiên ứng dụng và ngôn ngữ nào. Bạn chọn Visual Basic và start vs.net là

xong. Màn hình bắt đầu như sau:

Nếu trang start page không hiện, bạn có thể làm nó xuất hiện bằng cách

chọn menu View | Other Windows | Start Page.

Mở một dự án của visual basic

Page 4: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Tại trang start page, bạn có thể click vào project của phần Open và duyệt

một dự án trong phần Baitap sẵn có của chương 1.

Mở một dự án cụ thể

- Click chuột vào project của phần Open tại trang Start Page.

- Duyệt đến thư mục chứa dự án của chương 1

- Mở file MusicTrivia.sln. Khi này trang Start Page sẽ tạm ẩn đi, một

cửa sổ mới xuất hiện:

Khi mở dự án ở trên chắc hẳn bạn đã nhìn thấy hai file là MusicTrivia.sln

và MusicTrivia.vbproj. file .sln là file giải pháp và file .vbproj là file dự án.

Vậy phân biệt chúng thế nào?

Trong VS, các chương trình đang triển khai và phát triển được gọi là dự

án (Projects) hoặc giải pháp (Solution) bởi chúng chứa rất nhiều file và do nhiều

Page 5: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

thành phần, đối tượng riêng lẻ hợp lại. Một chương trình vs.NET bao gồm một file

giải pháp và một file dự án hợp lại. File dự án chứa thông tin đặc biệt liên quan đến

một tác vụ lập trình đơn lẻ. File giải pháp lại chứa thông tin về một hay nhiều dự

án.

Như vậy về tương lai thì file .sln sẽ được ưa chuộng hơn

- Chạy một chương trình Visual Basic

Nhắp chuột vào nút start màu xanh trên standard bar để chạy chương

trình (bạn cũng có thể ấn phim F5).

- Ấn thử nút Answer và Quit.

- Làm việc với các điều khiển trên TOOLBOX

- Sử dụng các điều khiển Textbox và Button tạo chương trình Hello

World

- Sử dụng điều khiển DateTimePicker hiển thị ngày sinh của bạn

- Sử dụng combobox, CheckBox, RadioButton, ListBox để xử lý các

nhập liệu của người dùng

- Sử dụng điều khiển LinkLabel để hiển thị trang web trên Internet

- Cài đặt điều khiển ActiveX

TOOLBOX chứa các điều khiển để thiết kế form chương trình. Bạn có

thể sử dụng những điều khiển đã có sẵn hay thêm một vài thành phần vào đó để sử

dụng sau này.

1.2. CÁC THÀNH PHẦN CỦA VB.NET (1 tiết)

- Kiểu dữ liệu: int, char, bool, double, long… Kiểu dữ liệu Kích thƣớc Phạm vi Ví dụ

Short 16-bit -32,678 - 32,767 Dim S as Short

S = 12500

Integer 32-bit -2,147,483,648 đến

2,147,483,647

Dim I as Integer

S = 4000

Long 64-bit -9,233,372,036,854,775,808 đến

9,233,372,036,854,775,807

Dim L as Long

L = 3988890343

Page 6: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Single 32-bit (dấu

phảy động)

-3.402823E38 đến 3.402823E38 Dim Sg as Single

Sg = 899.99

Double 64-bit (dấu

phảy động)

-1.797631348623E308 đến

1.797631348623E308

Dim D as Double

D=3.1.4159265

Decimal 128-bit Trong khoảng +/-79,228x1024

Dim Dc as Decimal

Dc=7234734.5

Byte 8-bit 0-255 Dim B as Byte

B=12

Char 16-bit 0-65,536 Dim Ch As Char

Ch=”L”

String Nhiều ký tự Chứa 0 đến 2 tỷ ký tự Dim St As String

St=”Đức Lập”

Boolean 16-bit Hai giá trị True hay False Dim Bl As Boolean

Bl = True

Date 64-bit Từ 1/1/1 đến 31/12/9999 Dim Da As Date

Da=#16/07/1984

Object 32-bit Bất kỳ kiểu đối tượng nào Dim Obj As Object

- Biến :

+ Khai báo:

Trong VB.NET bạn cần khai báo biến trước khi sử dụng nó.

Việc khai báo được tiến hành bằng câu lệnh Dim. Cấu trúc của phát biểu là

Dim + tên biến + As + kiểu dữ liệu. Phát biểu này có thể đặt ở bất kỳ đâu nhưng

thường được đặt ở đầu mỗi thủ tục, nơi cần dùng biến. Ví dụ:

Dim LastName As String

Phát biểu trên khai báo một biến tên là LastName có kiểu dl là String.

Sau khi đã khai báo biến thì bạn có thể thoải mái gán hay lưu thông tin

vào biến, ví dụ:

LastName = “cuong nguyen”

Và có thể gán nội dung biến cho thuộc tính của đối tượng, ví dụ:

Page 7: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Label1.Text = LastName

+ Sử dụng:

Hướng dẫn sử dụng biến qua một ví dụ đơn giản

- Hằng :

Hằng là một biến đặc biệt không thay đổi giá trị. Nó cũng giống như

biến nhưng không tồn tại khái niệm gán lưu giá trị mới cho hằng số. Hằng số được

khai báo bằng từ khóa Const. Ví dụ:

Const PI As Double = 3.14159265

Label1.Text = PI

- Biểu thức

+ Các toán tử:

Toán tử Mô tả

+ Phép cộng

- Phép trừ

* Nhân

/ Chia

\ Chia lấy phần nguyên

^ Mũ lũy thừa

& Nối chuỗi

Visual Basic qui ước thứ tự ưu tiên các toán tử như sau:

() ^ - (dấu âm) */ (toán tử nhân, chia) \ (phép chia nguyên)

Mod (lấy phần dư) +- (toán tử cộng, trừ) .

* Bài tập các thành phần cơ bản của VB.Net (1 tiết)

Xây dựng một chương trình có tên MyDataTypes cho phép người dùng chọn

kiểu dữ liệu. Các kiểu dữ liệu sẽ được liệt kê trong một danh sách ListBox1. Khi

Page 8: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

người dùng click chọn kiểu dữ liệu tương ứng nào thì một thông báo về độ dài và

một ví dụ được đưa ra trong một ô TextBox.

Sử dụng các kiểu dữ liệu cơ sở:

Giao diện chƣơng trình:

Bạo tạo trong form các điều khiển gồm ListBox, TextBox và một Button như hình.

- Yêu cầu SV chuẩn bị: Cài đặt bộ công cụ Visual Studio 2010

Đọc chương 1, 2 ,3các tài liệu [1], và tham khảo các tìa liệu [2], [5]

Bài tập về nhà: bài tập tự làm chương 1,2,3tài liệu [1]

Page 9: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 2: Giới thiệu về .Net Framework & Visual Basic.NET Chương I Mục 1.4,1.5 + bài tập thực hành

Tiết thứ: 1 - 3 Tuần thứ: 2

- Mục đích, yêu cầu:

Sử dụng bộ công cụ Visual Studio 2008/2010 để soạn thảo, biên dịch một số

đoạn chương trình đơn giản trên ngôn ngữ VB.Net

Nắm chắc các thành phần chính của ngôn ngữ VB.Net;

Nắm được cấu trúc lệnh vủa VB.Net và các kiểu dữ liệu có cấu trúc

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, bài tập: 3t, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

1.3. CÁC CẤU TRÚC ĐIỀU KHIỂN (1. tiết)

- Lệnh gán

Một trong những cách xử lý mạnh mẽ nhất là dựa vào biểu thức điều kiện. Nó

quyết định dựa trên kết quả so sánh điều kiện. Ví dụ:

gia < 1000

biểu thức này cho kết quả True nếu biến gia < 1000 và False nếu gia > 1000. Các

toán tử so sánh có thể dùng trong biểu thức điều kiện:

Toán tử so sánh Ý nghĩa

= Bằng

<> Khác

< Nhỏ hơn

> Lớn hơn

<= Nhỏ hơn hoặc bằng

>= Lớn hơn hoặc bằng

- Cấu trúc rẽ nhánh

Dạng đơn giản của một biểu thức rẽ nhánh:

If bieuthuc Then Thucthi

Trong đó bieuthuc là biểu thức điều kiện và Thucthi là phát biểu được gọi khi

bieuthuc nhận giá trị True. Ví dụ

Page 10: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

If gia <1000 then Label1.Text = "Giá rẻ, mua lăm cái!"

- Cấu trúc lựa chọn :

Biểu thức If…Then còn có thể kiểm tra nhiều điều kiện một lúc và đưa ra

nhiều quyết định khác nhau với việc kết hợp với các từ khóa như ElseIf, Else

và EndIf:

If bieuthuc1 then

Khối lệnh 1

ElseIf bieuthuc2

Khối lệnh 2

ElseIf bieuthuc3

Khối lệnh 3

...

Else

Khối lệnh thực thi nếu không có giá trị bieuthuc(n) nào True

EndIF

Trong phát biểu trên, nếu Bieuthuc1 đúng, thực hiện Khối lệnh 1; nếu bieuthuc2

đúng, thực hiện Khối lệnh 2…

- Vòng lặp for:

Vòng lặp này cho phép bạn thực thi lặp lại một nhóm hay nhiều lệnh trong

một số lần nhất đinh.

Cú pháp:

For bien = batdau To ketthuc

Khối lệnh gọi thực thi

Next

Ví dụ:

For i = 1 to 4

Beep()

Next i

Đoạn mã trên đây sẽ phát ra bốn tiếng bíp bằng một vòng lặp for thay vì viết

bốn hàm beep().

Page 11: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

- Vòng lặp while

Thay vì chạy có giới hạn như FOR NEXT thì DO LOOPS sẽ chạy không giới

hạn cho đến khi nào điều kiện ghi trong phần WHILE sai thì mới dừng lại.

Cú pháp:

Do while bieuthuc

Khối lệnh

Loop

Với vòng lặp kiểu này thì nếu ngay từ đầu biểu thức sai ngay thì vòng lặp sẽ

không thực hiện một lệnh nào trong khối lệnh. Nếu muốn vòng lặp thực thi ít nhất

là một lệnh thì bạn dùng cú pháp sau:

Do

Khối lệnh

Loop While Bieuthuc

1.4. CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC (1 tiết)

- Mảng :

Việc khai báo mảng tương tự như khai báo biến. Việc khai báo thường chứa

các thông tin như:

+ Tên mảng: Tên đại diện cho mảng, việc truy cập một phần tử mảng gồm

tên mảng và chỉ số mảng.

+ Kiểu dữ liệu: Tất cả các phần tử trong mảng phải có cùng kiểu.

+ Kích thước mảng: Là số chiều của mảng.

+ Số phần tử của mảng: Số phần tử tối đa của mảng

* Tạo mảng cố định và mảng động

- Chuỗi ký tự :

Chuỗi là thông tin cần xử lý nhiều nhất trong mọi ngôn ngữ lập trình. Các

thao tác xử lý sẽ học trong chương này bao gồm cắt chuỗi, nối chuỗi, tìm kiếm, sắp

xếp, so sánh chuỗi,…

Việc nối chuỗi ta có toán tử & hay có thể dùng phương thức Concat của VB

ví dụ:

Page 12: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Dim loichao as String

loichao = String.Concat(“Hello ”, “World, ”, “Hi Everyone!”)

Bạn có thể dùng các phương thức cũ như Mid, Ucase, Lcase…hay dùng các

phương thức mới mà lớp String cung cấp như SubString, ToUpper, ToLower.

Thường ta dùng các phương thức mới này hơn.

Bảng sau liệt kê các hàm xử lý chuỗi trong cả .NET và VB truyền thống:

.NET VB cũ Chức năng

ToUpper UCase Đổi toàn bộ chuỗi sang chữ hoa

ToLower LCase Đổi toàn bộ chuỗi sang chữ thường

Length Len Trả về chiều dài chuỗi

SubString Mid Cắt chuỗi con trong chuỗi cha

IndexOf InStr Xác định vị trí chuỗi con trong chuỗi cha

Trim Trim Cắt bỏ khoảng trắng trong chuỗi

Remove Loại bỏ khoảng trắng ở giữa chuỗi

- Kiểu liệt kê

- Không gian tên: namespace

1.5. TỔNG KẾT CHƢƠNG + BÀI TẬP CÁC LỆNH VÀ KIỂU DỮ LIỆU (1

tiết)

Thiết kế giao diện:

Giao diện chương trình như sau:

Page 13: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bạn cũng tạo một giải pháp mới và thêm vào một dự án có cùng tên là

AdvancedMath và thiết kế giao diện như hình.

Chương trình này chỉ đơn giản là tính căn bậc hai của số 144 và đưa kết quả ra một

ô textbox khi người dùng nhấn vào nút button có tên „Tính căn bậc hai‟.

Xây dựng giao diện:

Giao diện chỉ đơn giản như sau:

- Yêu cầu SV chuẩn bị: Đọc chương 1, 2, 3 tài liệu [1] và tham khảo các tài liệu [2], [5]

Bài tập về nhà: bài tập tự làm chương 2 tài liệu [1]

Page 14: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 3: Thực hành chƣơng 1 Chương I Bài tập thực hành

Tiết thứ: 1 - 3 Tuần thứ: 3

- Mục đích, yêu cầu:

Sử dụng bộ công cụ Visual Studio 2008/2010 để soạn thảo, biên dịch một số

đoạn chương trình đơn giản trên ngôn ngữ VB.Net

Nắm chắc các thành phần chính của ngôn ngữ VB.Net;

Nắm được cấu trúc lệnh vủa VB.Net và các kiểu dữ liệu có cấu trúc

Nâng cao kỹ năng thực hành

- Hình thức tổ chức dạy học: Bài tập thực hành, tự học, tự nghiên cứu.

- Thời gian: Bài tập thực hành: 3t, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

BÀI THỰC HÀNH 1 (1 tiết)

- Soạn thảo một chương trình ứng dụng đơn giản

- Vào ra trên Console Application

- Khai báo biến, hằng

- Bài tập về Cấu trúc rẽ nhánh if

- Bài tập về Cấu trúc lựa chọn Select…Case (switch…case)

- Bài tập về Vòng lặp

- Bài tập về Mảng: khai báo, sắp xếp, tìm kiếm

- Bài tập về Chuỗi ký tự

- Bài tập về Kiểu liệt kê

BÀI THỰC HÀNH 2 (1 tiết)

Luckyseven có giao diện như sau:

Page 15: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Form chính gồm có hai nút (quay số và kết thúc), bốn nhãn (1, 2, 3 –

chứa ba số ngẫu nhiên, 4 – chứa tên chương trình và hiện dòng “Bạn chiến thắng

nếu cả 3 nhãn 1, 2, 3 đều là số 7”).

Khi bạn click vào nút Quay số thì chương trình phát sinh ngẫu nhiên ba

số

BÀI THỰC HÀNH 3 (1 tiết) Mô phỏng mô hình máy tính đơn giản với các toán tử đã biết. Nhập dữ liệu

bằng các nút như Calculator của hệ điều hành Windows.

Tìm hiểu về phép tính toán trên các số nguyên lớn.

- Yêu cầu SV chuẩn bị: Đọc chương 1, 2, 3 tài liệu [1] và tham khảo các tài liệu [2], [5]

Bài tập về nhà: bài tập tự làm chương 2 tài liệu [1]

Page 16: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 4: LẬP TRÌNH HƢỚNG ĐỐI TƢỢNG VỚI VISUAL BASIC.NET

Chương II Mục 2.1 + 2.2.1+2.2.2+2.2.3

Tiết thứ: 1 - 3 Tuần thứ: 4

- Mục đích, yêu cầu:

Nắm được các khái niệm về lập trình hướng đối tượng;

Hướng đối tượng trong ngôn ngữ VB.Net;

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, thảo luận: 3t; Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

2.1. LẬP TRÌNH HƢỚNG ĐỐI TƢỢNG (1 tiết)

- Giới thiệu

- Các tính chất của lập trình hướng đối tượng

+ Tính trườu tượng

+ Tình đóng gói

+ Tính kế thừa

+ Tính đa hình

- Các khái niệm trong lập trình hướng đối tượng

Access

Modifier

Dùng trong Mô tả

Public module, class, structure Được truy cập từ cùng project, từ

project khác hoặc từ thành phần

khác

Private module, class, structure Chỉ được truy cập trong cùng

module, class , structure

Protected Classes, class member Được truy cập trong cùng class ,

hoặc class được kế thừa

Friend module, class, structure Truy cập được trong cùng project

Protected

Friend

Classes, class member Truy cập được trong cùng project

Và từ các class được kế thừa

Page 17: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

2.2. HƢỚNG ĐỐI TƢỢNG VỚI VB.NET (2 tiết)

- Lớp :

Class là một khuân mẫu hoặc một bản thiết kế mà định nghĩa các thuộc tính và

các phương thức của đối tượng

Mỗi đối tượng có các đặc điểm hoặc thuộc tính -> gọi là thuộc tính

(property) của đối tượng, và có thể thực hiện hành động -> gọi là phương thức

(method).

+ Cú pháp:

[AccessModifier][Keyword] Class _ ClassName [Implements

InterfaceName]

'Declare properties and methods

End Class

AccessModifier định nghĩa khả năng truy cập của class, sử dụng một trong

các từ khóa : Public, Private, Protected, Friend,Protected Friend.

Keyword chỉ rõ các lớp có được thừa kế hay không, từ khóa Inherit,

NotInheritable hoặc MustInherit.

Class đánh dấu bắt đầu một class

Classname: tên của một class

Implements chỉ rõ class thực thi trên giao diện nào.

InterfaceName miêu tả tên giao diện.Một class có thể thực thi trên một hoặc

nhiều giao diện.

End Class đánh dấu kết thúc khai báo của một class

- Phương thức

Bao gồm thủ tục Sub và Function được khai báo trong class.

VB.Net bao gồm các thủ tuc Sub, Function, và Property.

Thủ tục Sub không trả về giá trị. Câu lệnh Sub .. End Sub. Khi thủ tục Sub

được gọi, tất cả các câu lệnh trong thủ tục được thực hiện cho đến khi gặp các câu

lệnh End Sub, Exit Sub hoặc Return.

Thủ tục Function trả về giá trị khi gọi nó. Dùng câu lệnh Function và End

Function để định nghĩa thủ tục Function. Thủ tục Function thực thi các câu lệnh

phía trong cho đến khi gặp các câu lệnh End Function, Exit Function hoặc Return.

Hai thủ tục Function và Sub có thể mang đối số như hằng, biến, biểu thức.

Bạn có thể chồng các phương thức trong VB.Net.

Page 18: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

- Thuộc tính :

Cú pháp tạo thuộc tính:

Public Property NamProperty() As DataType

Get

Return PropertyValue

'Where PropertyValue is the property's value

End Get

Set(ByVal value As DataType)

PropertyValue = value

'Where PropertyValue is the new value to be assigned

End Set

End Property

Làm ví dụ về Lớp

Mặc định Property có cả hai thuộc tính đọc và ghi. VB.Net cũng định nghĩa

thuộc tính chỉ đọc hoặc chỉ ghi.

Thuộc tính chỉ đọc dùng từ khóa ReadOnly

Thuộc tính chỉ ghi dùng từ khóa WriteOnly

Các từ đặt trước từ khóa AcessModifier

- Yêu cầu SV chuẩn bị:

Đọc chương 4 các tài liệu [1], [2], [4]

Bài tập về nhà: bài tập tự làm chương 3 tài liệu [5]

Page 19: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 5: LẬP TRÌNH HƢỚNG ĐỐI TƢỢNG VỚI VB.NET

Chương II Mục 2.2+2.3

Tiết thứ: 1 - 3 Tuần thứ: 5

- Mục đích, yêu cầu:

Nắm chắc các khái niệm về hướng đối tượng;

Sử dụng ngôn ngữ VB.Net trong lập trình hướng đối tượng;

Giải một số bài toán hướng đối tượng trên VB.NET.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu.

- Thời gian: Lý thuyết, thảo luận: 3t, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

2.2. HƢỚNG ĐỐI TƢỢNG VỚI VB.NET (2 tiết)

- Thừa kế :

Một class thừa kế từ một class tồn tại. Lớp thừa kế gọi là lớp con (subclass)

và lớp class được thừa kế gọi là lớp cơ sở (base class).

Tất cả các lớp trong VB.Net đều xuất phát từ lớp Object.

Lớp con thừa kế các thuộc tính và các phương thức từ lớp cơ sở.

Cũng có thể thêm các thuộc tính và phương thức cho lớp con. Bạn cũng có

thể chồng các phương thức của lớp cơ sở.

Tính thừa kế cho phép bạn tạo phân cấp các đối tượng.

Mặc định, tất các các class bạn tạo trong VB.Net có thể được thừa kế.

Thừa kế cho phép bạn dùng lại code và tạo các đối tượng phức tạp hơn từ

các đối tượng đơn giản.

VB.Net cung cấp nhiều từ khóa cho phép bạn thi hành việc thừa kế

Cú pháp: Inherits

Page 20: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Ví dụ:

Public Class ThisClass

Inherits OtherClass

'Property and method declarations

'Other code

End Class

Lớp ThisClass kế thừa từ lớp OtherClass

VB.Net cung cấp các từ khóa khác nhau để thực hiện việc thừa kế

Keyword Được dùng với Mục đính

Inherits Classes Thừa kế tất cả các thành viên của

lớp thừa kế (trừ private)

MustInherit Classes Chỉ rõ lớp này chỉ sử dụng như lớp

cơ sở

NotInheritable Classes Chỉ rõ lớp này không được sử

dụng như lớp cơ sở

Overridable Procedures Chỉ rõ thủ tục có thể viết chồng

trong class được thừa kế.

NotOverridable Procedures Chỉ rõ thủ tục không được viết

chồng trong class được thừa kế.

MustOverride Procedures Chỉ định các thủ tục phải viết

chồng trong tất cả các lớp được kế

thừa

Page 21: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Overrides Procedures Chỉ định một thủ tục được viết

chồng từ lớp cơ sở

MyBase Code Gọi code của lớp cơ sở từ lớp được

thừa kế

MyClass Procedures Gọi code của chính class đó

Protected Procedures,

fields

Chỉ định các thủ tục và các trường

được truy cập trong cùng class và

các class được thừa kế

Ví dụ:

Page 22: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

- Khai báo các thành viên của Class

Constructor (Thủ tục khởi dựng)

- Được dùng để khởi tạo đối tượng

- VB.Net, Thủ tục Sub New thực hiện như một Contructor

- Thủ tục Sub New được thực hiện khi đối tượng của class đươc tạo, bạn

có thể thực hiện các công việc cần thiết trước khi dùng đối tượng.

- Ví dụ khi bạn kết nối với Database, và các biến được khởi tạo trong

Sub New

Tất cả các class trong VB.Net đều xuất phát từ class Object. Vì vậy

khi tạo một class, bạn cần gọi Contructor của class Object. Để làm việc này bạn

thêm câu lệnh MyBase.New() vào dòng đầu tiên của Contructor class của bạn.

Public Class MyNewClass

Public Sub New()

MyBase.New()

'Code for Initializing objects and variables

End Sub

'Other class members

End Class

Contructor cũng có thể mang đối số.

Public class Employer

Public Sub New(Optional ByVal iempcode As Integer = 0)

„code initiation here

End Sub

„code here

End Class

Bạn có thể tạo các đối tượng Employer:

Dim Emp1 As New Employee(1001)

Hoặc

Dim Emp2 As Employee = New Employee(1001)

Thủ tục khởi hủy:

VB.Net cũng cung cấp thủ tục khởi hủy Sub Finalize.

Thủ tục khởi hủy thực hiện ngược lại với hàm khởi tạo.

Thủ tục khởi hủy sẽ giải phóng bộ nhớ và các tài nguyên đã được sử dụng

của đối tượng.

Thủ tục Sub Finalize là phương thức Protected

Page 23: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

2.3. TỔNG KẾT CHƢƠNG + VÍ DỤ MINH HỌA (1 tiết)

Xây dựng lớp Person gồm các thông tin: Họ và tên, Ngày sinh, Quê quán. Sau

đó, xây dựng lớp dẫn xuất “Kỹ sư” ngoài các thông tin của lớp Person, lớp kỹ sư

còn

có các thông tin về: Ngành học, Năm tốt nghiệp (int) và các phương thức:

Phương thức nhập: nhập các thông tin của kỹ sư.

Phương thức xuất: xuất các thông tin lên màn hình.

Xây dựng chương trình chính nhập vào một danh sách các kỹ sư. In danh sách

của các kỹ sư lên màn hình và thông tin của các kỹ sư tốt nghiệp gần đây nhất (năm

tốt

nghiệp lớn nhất).

- Yêu cầu SV chuẩn bị:

Đọc chương 3 các tài liệu [1], [4]

Bài tập về nhà: bài tập tự làm chương 4 tài liệu [5]

Page 24: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 6: Thực hành chƣơng 2

Chương II Mục 2.1+2.2+2.3

Tiết thứ: 1 - 3 Tuần thứ: 6

- Mục đích, yêu cầu:

Ôn lại kiến thức chương 2

Nâng cao kỹ năng thực hành;

Giải một số bài toán hướng đối tượng trên VB.NET.

- Hình thức tổ chức dạy học: Thực hành, tự học, tự nghiên cứu.

- Thời gian: Bài tập thực hành: 3t, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

BÀI THỰC HÀNH 4 (1 tiết)

- Thiết kế lớp trên VB.Net

- Hàm khởi tạo

- Triệu gọi đối tượng

- Gán giá trị thuộc tính

- Xây dựng phương thức thuộc tính

Xây dựng lớp Máy in gồm các thông tin: Trọng lượng máy, năm sản xuất,

hãng sản xuất. Sau đó, xây dựng lớp dẫn xuất: Máy in kim, ngoài các thuộc tính

của máy in ra còn có thêm thuộc tính : số kim (int), tốc độ in (trang/ phút - int).

Xây dựng lớp Máy in Laser ngoài các thuộc tính của máy in còn có thêm các thuộc

tính: Độ phân giải (int), tốc độ in (int). Hai lớp dẫn xuất này có các phương thức:

Nhập: nhập các thông tin của máy in, Xuất: xuất các thông tin của máy in ra màn

hình. Xây dựng chương trình chính nhập vào thông tin của n máy in kim và m máy

in Laser. Xuất các thông tin đó lên màn hình.

BÀI THỰC HÀNH 5 (1 tiết)

Xây dựng lớp PERSON gồm các thông tin sau: Hoten (char[50]), Ngaysinh

(char[12]), Quequan (char[100]) và xây dựng lớp DIEM gồm: Diểmtoan (int),

Diemly (int), Điểmhoá (int). Xây dựng lớp HOCSINH kế thừa từ 2 lớp trên có

thêm dữ liệu: Lop (char [30]), Tongdiem (int) và các phương thức nhập dữ liệu từ

bàn phím và xuất dữ liệu ra màn hình. Yêu cầu cả 3 lớp trên đều có phương thức

thiết lập để khởi tạo các dữ liệu là số thì giá trị = 0, dữ liệu là xâu thì giá trị = “”.

Phải viết chương trình chính để minh hoạ sử dụng lớp vừa xâu dựng.

BÀI THỰC HÀNH 6 (1 tiết)

- Cài đặt các lớp theo biểu đồ sau:

Page 25: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

(với input và output là các phương thức nhập, xuất thông tin của các thuộc

tính của lớp). Viết chương trình chính nhập vào danh sách n máy tính. In ra thông

tin của các máy tính của nhà xản suất Intel. Sắp xếp danh sách các máy tính theo

chiều giảm dần của giá thành và in danh sách đã sắp ra màn hình. Cho biết giá

thành trung bình của mỗi chiếc máy tính?

- Yêu cầu SV chuẩn bị:

Đọc chương 3 các tài liệu [1], [4]

Bài tập về nhà: bài tập tự làm chương 4 tài liệu [5]

Page 26: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 7: WINDOWS FORM

Chương 3 Mục 3.1 + 3.2 + 3.3

Tiết thứ: 1 - 3 Tuần thứ: 7

- Mục đích, yêu cầu:

Nắm được các khái niệm về sự kiện và cách truyền thông điệp trên ứng dụng

Window Form;

Các loại ứng dụng Window Form

Cách thức tạo ứng dụng Window Form

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, thảo luận: 3t; Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

3.1. CÁC KHÁI NIỆM (1 tiết)

- Sự kiện

- Lập trình hướng sự kiện

- Windows Form :

+ Thêm from vào dự án

Nhắp đôi vào form1.vb trong cửa sổ Solution Explorer để hiển thị form

chính.

Bạn R-Click vào dự án Luckyseven và chọn Add | New Item. Bạn chọn

thêm vào một Windows Form và gõ tên là HelpInfo.vb:

Page 27: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Thêm một số điều khiển vào trong form mới này:

- Thêm vào một nhãn đặt thuộc tính text là “Chương trình

Luckyseven – Số 7 may mắn”

- Thêm một TextBox ngay dưới nhãn, thuộc tính MultiLine là

True, Scrollbar là Both

- Thêm một nút Button1, thuộc tính Text là OK

Giao diện như hình:

+ Hiển thị form thứ hai sử dụng thủ tục sự kiện

Để làm được điều này ta sẽ thêm một nút ở form thứ nhất Form1.vb và

thêm thủ tục triệu gọi form thứ hai.

Bạn mở form1.vb và thêm vào nút nhấn đặt thuộc tính Text cho nó là

“Trợ giúp”, thuộc tính name là btnHelp.

Tạo thủ tục btnHelp_Click bằng cách double click vào nút Trợ giúp và

nhập đoạn mã sau:

Dim frmtrogiup As New HelpInfo()

frmtrogiup.ShowDialog()

Page 28: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Hai phát biểu này cho phép triệu gọi form thứ hai. Như đã nói trước, để

tham chiếu đến form thứ hai bạn cần tường minh form đó. Ở đây chúng ta khai báo

biến frmtrogiup có kiểu HelpInfo nhờ phát biểu New HelpInfo(). Sau khi đã khởi

tạo chúng ta có thể hiển thị form bằng cách gọi đến phương thức ShowDialog().

Nếu ở đây bạn gọi form này bằng phương thức Show() thì trong thủ tục

Button1_Click của form HelpInfo bạn cần gọi phương thức Me.Close thay cho

phương thức DialogResult.OK chúng ta đã dùng.

Bạn chạy chương trình bằng cách ấn F5 và ấn nút Trợ giúp để hiển thị

form thứ hai:

+ Định vị form trên màn hình

Bạn có thể định vị form trên màn hình desktop khi nó xuất hiện bằng

thuộc tính DesktopBounds. Nó cho phép định vị trí của form với góc phải dưới và

góc trái trên. Đơn vị tinh là pixel.

Ngoài ra bạn còn có thể sử dụng thuộc tính StartPosition với các đặc

điểm: Manual – bằng tay, CenterScreen – giữa màn hình, WindowsDefaultLocation

– vị trí mặc định, WindowsDefaultBound – kích thước mặc định.

Page 29: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

+ Phóng to, thu nhỏ, khôi phục cửa sổ chương trình

Ngoài ra bạn cũng có thể phóng to, thu nhỏ hay khôi phục lại vị trí mặc

định của form. Bạn có thể thực hiện điều này khi thiết kế hay khi chương trình

đang chạy.

Để làm điều này trước hết bạn cần cho hiện hai nút Maximize và

minimize ở góc phải trên chương trình bằng hai thuộc tính:

MaximizeBox = True

MinimizeBox = True

Tiếp đến trong mã chương trình hay trong cửa sổ thuộc tính bạn đặt

thuộc tính WindowState như sau:

WindowState = FormWindowState.Minimized

Nếu bạn muốn kiểm soát kích thước phóng to, thu nhỏ cho phép của form

bạn đặt thuộc tính MinimumSize, MaximumSize. Hai thuộc tính này có kiểu cấu

trúc Size giống như cấu trúc Rectangle, ví dụ:

Dim Formsize As New Size(400, 300)

MaximumSize = Formsize

- Control:

+ Thêm các điểu khiển luc form đang chạy.

Ta thường đưa các điều khiển trên Toolbox khi thiết kế form. Bạn

cũng có thể đưa chúng vào trong form khi chương trình đang chạy – tạo điều khiển

động. Quy trình để đưa như sau:

Khai báo biến đối tượng có kiểu lớp của phần tử giao diện mà bạn

muốn đưa vào, ví dụ:

Dim btnOK As New Button()

Thiết lập thuộc tính cho các nút nhấn sau khi đã khai báo như trên:

'Đặt thuộc tính cho nút nhấn

btnOK.Text = "OK"

btnOK.Location = New Point(110, 100)

Page 30: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Đưa đối tượng vào form. Để thực hiện điều này, bạn đưa các đối tượng

vào tập hợp Controls của form bằng phương thức Add:

form2.Controls.Add(btnOK)

Bài tập MyAddControls sau đây sẽ minh họa cụ thể hơn:

Bạn tạo một giải pháp mới và thêm vào một dự án có cùng tên như

trên. Thiết kế form1 có một nút nhấn với thuộc tính text là “Hiển thị ngày”. Khi

người dùng click vào đây thì một form mới sẽ được tạo ra. Khi form này tạo ra thì

đồng thời mã chương trình sẽ tạo hai điều khiển là nhãn lblNgay ghi ngày hiện

hành và nút nhấn btnOK để đóng form thứ hai này lại.

Bạn tạo thủ tục Button1_click và nhập mã như sau:

'Khai báo form và các đối tượng điều khiển

Dim form2 As New Form()

Dim lblNgay As New Label()

Dim btnOK As New Button()

'Đặt thuộc tính nhãn

lblNgay.Text = "Hôm nay là: " & DateString

lblNgay.Size = New Size(150, 50)

lblNgay.Location = New Point(80, 50)

'Đặt thuộc tính cho nút nhấn

btnOK.Text = "OK"

btnOK.Location = New Point(110, 100)

'Đặt thuộc tính cho form mới

form2.Text = "Ngày hiện hành"

form2.CancelButton = btnOK

form2.StartPosition = FormStartPosition.CenterScreen

'Đưa các đối tượng mới vào tập hợp Controls

form2.Controls.Add(lblNgay)

form2.Controls.Add(btnOK)

Page 31: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

'Gọi hiển thị form2

form2.ShowDialog()

Chạy chương trình và chúng ta sẽ thấy hiệu quả.

+ Tổ chức sắp xếp các điều khiển trên form

Việc thêm các điều khiển bằng mã chương trình gặp khó khăn trong

việc căn chỉnh vị trí các đối tượng do không có công cụ nhìn trực quan. Chúng ta

chỉ có thể định kích thước và vị trí thông qua hai thuộc tính là Size và Location. Để

khắc phục điều này, VB.NET cung cấp một số thuộc tính mới như Anchor – định

phạm vi ràng buộc tương đối giữa các đối tượng, Dock – neo dính đối tượng này

vào cạnh một đối tuợng khác. Chúng ta sẽ làm quen với hai thuộc tính này trong

bài tập MyAnchorAndDock sau đây:

Tìm hiểu chƣơng trình:

Page 32: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Chương trình gồm một PictureBox cho hiển thị một ảnh, một TextBox

và một nút nhấn. Khi người dùng click vào nút này thì tiến hành định vị các điều

khiển trong form.

Thiết kế giao diện:

Giao diện chính của form như hình:

Thuộc tính của các đối tượng:

- PictureBox1: Image – các bạn có thể cho một ảnh bất kỳ

nào (dung lượng nhỏ thôi) để hiển thị; sizemode – StretchImage.

- Button1: Text – “Canh lề”.

+ Thực thi chương trình

Khi thực thi chương trình ta có thể chỉ định thủ tục hay đối tượng thực

thi chương trình khởi động: thay đổi form khởi động, thực thi chương

trình từ thủ tục Sub main

3.2. FORM (1 tiết)

- Thiết kế và sử dụng Form

- Các thuộc tính

Page 33: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

- Các phương thức

- Các sự kiện

- Kế thừa form và tạo các lớp cơ sở

3.3. CÁC ĐIỀU KHIỂN CƠ BẢN (1 tiết)

- Giới thiệu

- Label

- TextBox

- Button

- ListBox

- CheckedListBox

- ComboBox

- OptionButton

- CheckedBox

- PictureBox

- GroupBox

- Panel

- TabControl

- Timer

- ErrorControl

- Yêu cầu SV chuẩn bị:

Đọc chương 4,5 các tài liệu [1].

Bài tập về nhà: bài tập tự làm chương 4,5 tài liệu [1]

Page 34: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 8: Window Form (Tiếp)

Chương 3 Mục 3.4+3.5+3.6+3.7

Tiết thứ: 1 - 3 Tuần thứ: 8

- Mục đích, yêu cầu:

Nắm được kiến thức liên kết Form, hộp thoại, thông điệp.

Nắm chắc các điều khiển cơ bản, điều khiển nâng cao

Nắm chắc cách thức tạo ứng dụng window form

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, thảo luận: 3t; Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

3.4. LIÊN KẾT GIỮA CÁC FORM(0.5 tiết)

Hiển thị form thứ hai sử dụng thủ tục sự kiện(Ví dụ)

3.5. HỘP THOẠI (1 tiết)

- Phân loại:

Hộp thoại Mô tả

ColorDialog Cho chọn tên và hiệu chỉnh giá trị màu

sắc

FolderBrowserDialog

Cho phép duyệt thư mục

FontDialog Chọn tên và kiểu font chữ mới

OpenFileDialog Cho lấy về ổ đĩa, tên file, tên folder

PageSetupDialog Điều khiển các thiết lập trang in

PrintDialog Cho thiết lập các tùy chỉnh in ấn

PrintPreviewDialog Hiển thị xem trước khi in

SaveFileDialog Cho đặt tên file, folder mới sắp ghi lên

đĩa

- Hộp thoại thông dụng

- Hộp thông điệp

+ Hướng dẫn thêm các thoogn điệp, các hộp thoại vào chương trình

Page 35: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

3.6. ỨNG DỤNG MULTIPLE DOCUMENT INTERFACE (MDI) (0.5

tiết)

3.7. CÁC ĐIỀU KHIỂN NÂNG CAO (1 tiết)

- Menu

- Toolbar

- StatusBar

- TreeView

- ImageList

- ListView

- Yêu cầu SV chuẩn bị:

Đọc chương 4,5 các tài liệu [1].

Bài tập về nhà: bài tập tự làm chương 4,5 tài liệu [1]

Page 36: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 9: Thực hành chƣơng 3

Chương 3 Mục 3.1 + 3.2 + 3.3+3.4+3.5+3.6+3.7

Tiết thứ: 1 - 3 Tuần thứ: 9

- Mục đích, yêu cầu:

Ôn lại kiến thức chương 3

Nâng cao kỹ năng thực hành

Sinh viên làm bài tập đầy đủ ở nhà

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Bài tập thực hành: 3t; Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

BÀI THỰC HÀNH 7 (1 tiết)

Tạo ứng dụng Notepad

- Làm việc với Menu

- Làm việc với File Text

- Làm việc với các hộp thoại

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

BÀI THỰC HÀNH 8 (1 tiết)

Tạo ứng dụng Máy tính bảng (Caculator)

- Mảng điều khiển

-Các sự kiện với Button và Text Box

- Các hàm tính toán

BÀI THỰC HÀNH 9 (1 tiết)

- Tạo ứng dụng Game Memory (lật hình)

- Điều khiển PictureBox, ImageBox

- Bắt các sự kiện về đồ họa, chuột

- Ghi nhận trạng thái trung gian bằng các cấu trúc dữ liệu

- Yêu cầu SV chuẩn bị:

Đọc chương 4,5 các tài liệu [1], [2]

Bài tập về nhà: bài tập tự làm chương 4,5 tài liệu [1]

Page 37: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 10: ADO.NET

Chương 4 Mục 4.1 + 4.2

Tiết thứ: 1 - 3 Tuần thứ: 10

- Mục đích, yêu cầu:

Nắm được các khái niệm về các đối tượng dữ liệu;

Các thành phần của ADO.Net và cách sử dụng;

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, bài tập:3t; Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

4.1. GIỚI THIỆU (1.5 tiết)

- Kiến trúc ứng dụng Client-Server

- Các thành phần truy cập dữ liệu (Data Access Components - DAC)

- ADO.NET

- ADO.NET là mô hình lập trình truy xuất dl chung cho tất cả các ngôn

ngữ và chương trình Windows.

- Chúng ta dùng các thành phần như DataSet, DataAdapter để thao tác

với csdl thay cho các thành phần cũ như Data Control và ADO Data Control.

- Định dạng dữ liệu trong ADO.NET tuân theo chuẩn XML nên dễ tích

hợp với các ứng dụng web.

4.3. CÁC THÀNH PHẦN CỦA ADO.NET (1.5 tiết)

- Làm việc với CSDL Access

Sử dụng Server Explorer để thiết lập kết nối đến csdl của MS Access có

tên Students.mdb. Sau khi đã biết cách kết nối và đưa dữ liệu vào dataset, chúng ta

sẽ bắt đầu xây dựng và tích hợp chúng vào giao diện của form.

Bạn tạo mới một Solution có tên MyADOForm và thêm vào một dự án

cùng tên.

Bạn chọn View | Server Explorer từ menu để hiện cửa sổ Server Explorer

như hình:

Page 38: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Đây là công cụ đồ họa cho phép kết nối đến csdl cục bộ, trên server theo

mô hình client – server. Ta cũng có thể sử dụng nó để xem cấu trúc trong csdl, xem

thuộc tính của bảng, kiểu dl của trường và mẩu tin trong csdl. Bạn có thể nắm kéo

các kết nối và bảng dl trong cửa sổ này để tạo ra đối tượng dl cho chương trình.

Tiếp theo bạn tạo kết nối đến csdl bằng cách click vào nút Connect To

DataBase trong cửa sổ Server Explorer. Một hộp thoại Choose Data Source

hiện ra cho phép ta chọn nguồn dl như hình:

Bạn chọn Microsoft Access DataBase File và nhấn vào nút Continue để

làm xuất hiện hộp thoại Add Connection như hình:

Page 39: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bạn chọn đường dẫn đén csdl bằng cách nhắp vào nút Browse… và chọn

csdl Students.mdb như hình. Bạn có thể kiểm tra xem kết nối có thành công không

bằng cách click vào nút Test Connection, bạn cũng có thể tùy chỉnh kết nối bằng

cách click vào nút Advanced:

Page 40: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bạn có thể thấy dòng mã kết nối ở ô cuối cùng như hình, dòng mã có nội

dung:“Provider=Microsoft.Jet.OLEDB.4.0;Data

Source="D:\Data\Studying\VS.Net 05\Tu_ ng buoc lap trinh vb.net\Tung buoc

lap trinh vb.net\19_Chapter19\Bai tap\DataBase\Students.mdb"”

Nhấn OK để thêm kết nối vào Server Explorer.

Bạn có thể mở rộng tất cả các mục bằng cách click vào dấu (+) bên cạnh

để mở rộng như hình:

- DataSet

+ DataSet. là hình ảnh có được từ DataAdapter. Nó chỉ là ảnh của csdl nên

mọi thao tác của người dùng sẽ chưa ảnh hưởng đến csdl cho đến khi có yêu cầu

cập nhật.

Page 41: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Trong phần tiếp theo của bài tập này chúng ta sẽ tạo đối tượng DataSet trình

diễn thông tin trong cột Instructor của bảng Instructors trong csdl Students.mdb.

Bạn nhấp chuột lên form1 để chọn nó. Nếu không chọn nó thì các lệnh tạo

DataSet sẽ không hiển thị trên menu.

+ Làm việc với DataSet (Có ví dụ đi kèm)

+ Các điều khiển ràng buộc dữ liệu

Bạn có thể ràng buộc dữ liệu với các điều khiển sau: TextBox, Label,

ListBox, ComboBox, RadioButon, DataGrid và PictureBox. Trong đó đặc biệt và

hữu ích nhất có lẽ là DataGrid vì nó cho phép bạn hiển thị toàn bộ nội dung của

DataSet.

Ví dụ ràng buộc dữ liệu vào TextBox để hiển thị thông tin trong bảng

Instructors của csdl Students.mdb.

- Yêu cầu SV chuẩn bị:

Đọc chương 8 các tài liệu [1], [2], chương 7 tài liệu [4]

Bài tập về nhà: bài tập tự làm chương 8 tài liệu [1]

Page 42: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 11: ADO.NET (Tiếp)

Chương 4 Mục 4.2 + 4.3

Tiết thứ: 1 - 3 Tuần thứ: 11

- Mục đích, yêu cầu:

Nắm được các khái niệm về các đối tượng dữ liệu;

Các thành phần của ADO.Net và cách sử dụng;

Một số câu lệnh SQL điển hình dùng trong các ứng dụng CSDL;

Mô hình Client – Server

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, bài tập 3 tiết, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

4.2. CÁC THÀNH PHẦN CỦA ADO.NET (2.5 tiết)

- DataAdapter

Data Adapter sẽ định nghĩa chính xác những thông tin mà bạn muốn

lấy trong csdl, là nền tảng để tạo DataSet.

VB.NET cung cấp rất nhiều cách tạo bộ điều phối. Cách đơn giản nhất là ta

kéo các biểu tượng bảng trong Server Explorer vào cửa sổ form trong chế độ thiết

kế. Ta cũng có cách thứ hai là dùng công cụ Data Adapter Configuration Winzard.

Ta gọi đến công cụ này bằng cách chọn đối tượng OledbDataAdapter trên tab Data

của ToolBox và đặt nó lên form

Làm ví dụ về dataAdapter

Chọn tab Data trong cửa sổ ToolBox. Tab này chứa các điều khiển để

thao tác với csdl. Trong tab này có hai đối tượng OleDbConnection và

sqlConnection đều cho phép tạo kết nối đến csdl. Nhưng chúng ta đã kết nối bằng

Server Explorer nên không cần hai đối tượng này nữa.

Kéo đối tượng OleDbDataAdapter vào trong form. Nếu

đối tượng này không xuất hiện, bạn có thể thêm nó vào bằng cách R-Click vào tab

Data chọn Choose Item… để làm xuất hiện cửa sổ Choose ToolBox Items. Chọn

tab .Net Framework Components và chọn OleDbAdapter như hình:

Page 43: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Nhắp OK để hoàn thiện việc thêm Item này cho ToolBox. Bạn cũng có

thể làm tương tự với các đối tượng khác.

OleDbAdapter được thiết kế để kết nối đến csdl Access. Khi kéo thả đối

tượng này vào form thì VS.NET sẽ tao trình Data Adapter Configuration Winzard.

Một màn hình khởi đầu, bạn nhấn Next để chuyển sang màn hình thứ hai:

Bạn nhấn Next hai lần để xuất hiện màn hình soạn thảo câu lệnh SQL

như hình H.1 dưới.

Nếu bạn chưa biết đến các câu lệnh SQL, có thể nhấn vào nút Query

Builder… để VS liệt kê các bảng của csdl để bạn chọn.

Bạn hãy nhấn vào bảng Instructors như hình H.2 và nhấn Add, rồi ấn

Close để đóng cửa sổ này lại.

Bạn thấy trong bảng Instructors có các ô CheckBox tương ứng với các

trường. Query sẽ tạo câu lệnh tương ứng để rút thông tin của bảng. Trong bài tập

này chúng ta chỉ rút thông tin từ một cột trong bảng. Bạn nhấn vào cột Instructor để

Page 44: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

chọn nó như hình H.3 và nhấn OK. Chúng ta đã tạo xong câu lệnh SQL để rút dữ

liệu.

Page 45: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm
Page 46: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Sau khi nhấn OK, một cửa sổ Generate The SQL Statement hiện ra hiển

thị câu lệnh SQL ta vừa tạo. Bạn nhấn Finish đê hoàn thành việc tạo đối tượng điều

phối

- DataBinding

+ Làm bài tập tạo các điểu khiển duyệt xem dữ liệu

Page 47: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

ADO.NET cho phép quản lý và duyệt qua các bản ghi (record) bằng

đối tượng CurrentManager. Với đối tượng này bạn có thể biết được vị trí hiện hành,

đi đến mẩu tin sau cùng hay trở về mẩu tin đầu tiên cũng như đến mẩu tin kế tiếp

hay ở trước. Mỗi DataSet đều có sẵn đối tượng CurrentManager và mỗi đối tượng

form đều có thuộc tính BindingContext theo dõi tất cả đối tượng CurrentManager

trên form.

Bây giờ trở lại bài tập của chúng ta. Trong phần trước chúng ta đã tạo

ra bốn nút nhấn mang tên First, Last, Next, Previous. Giờ chúng ta sẽ viết mã cho

chúng sử dụng đối tượng BindingContext, CurrentManager để duyệt qua các bản

ghi.

Trước hết tạo thủ tục btnFirst_Click với nội dung như sau:

Me.BindingContext(DsInstructors1, _

"Instructors").Position = 0

btnFirst.Enabled = False

btnNext.Enabled = True

btnLast.Enabled = True

Cú pháp này hiển thị bản ghi đầu tiên của DsInstructors1 sử dụng đối

tượng BindingContext. Nó gán giá trị 0 cho thuộc tính Position để con trỏ hiện

hành của dữ liệu chuyển đến bản ghi đầu tiên.

Tạo thủ tục btnLast_Click và nhập đoạn mã sau:

'Đếm tổng số bản ghi

Dim tongsobanghi As Integer = Me.BindingContext _

(DsInstructors1, "Instructors").Count

'Chuyển con trỏ đến bản ghi cuối cùng

Me.BindingContext(DsInstructors1, _

"Instructors").Position = tongsobanghi - 1

btnLast.Enabled = False

btnFirst.Enabled = True

btnPrevious.Enabled = True

Page 48: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

btnNext.Enabled = False

Tạo thủ tục btnNext_Click và nhập vào đoạn mã sau:

'Đếm số bản ghi hiện hành

Dim tongsobanghi As Integer = Me.BindingContext _

(DsInstructors1, "Instructors").Count

'Nếu chưa phải là bản ghi cuối thì next lên 1

If Me.BindingContext(DsInstructors1, _

"Instructors").Position < tongsobanghi - 1 Then

Me.BindingContext(DsInstructors1, _

"Instructors").Position += 1

btnFirst.Enabled = True

btnPrevious.Enabled = True

btnLast.Enabled = True

Else

btnNext.Enabled = False

btnLast.Enabled = False

btnFirst.Enabled = True

btnPrevious.Enabled = True

End If

Thủ tục btnPrevious_Click:

'Nếu chưa phải là bản ghi đầu thì lùi lại 1

If Me.BindingContext(DsInstructors1, _

"Instructors").Position > 0 Then

Me.BindingContext(DsInstructors1, _

"Instructors").Position -= 1

btnFirst.Enabled = True

btnLast.Enabled = True

btnNext.Enabled = True

Else

btnFirst.Enabled = False

btnPrevious.Enabled = False

End If

Page 49: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Vậy là chúng ta đã tạo xong các nút cho phép duyệt qua các bản ghi.

Bây giờ chúng ta chạy thử chương trình.

Chạy chƣơng trình:

Bạn nhấn F5 để chạy chương trình. Ấn nút Load Data để hiển thị dữ

liệu vào textbox. Ấn các phím để duyệt qua các bản ghi trong cơ sở dữ liệu.

Bạn nhấn nút Close ở góc phải trên của form để đóng chương trình

lại.

Bây giờ để cụ thể hơn nữa chúng ta sẽ tạo điều khiển label cho hiển

thị vị trí bản ghi hiện hành để người dùng tiện quan sát.

+ Hiển thị vị trí của bản ghi hiện hành

Ngoài việc cung cấp cơ chế duyệt xem các bản ghi, ta cũng cần cho

người dùng biết đó là bản ghi thứ mấy. Bây giờ chúng ta sẽ thêm một nhãn Label

để hiển thị thứ tự của bản ghi.

Page 50: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bạn mở thiết kế form và thêm vào một nhãn label1 có thuộc tính Name

là lblIndexOfRecord, thuộc tính Text của nhãn là “Record 0 of 0”. Giao diện như

hình:

Ta tạo một thủ tục có tên count() ở ngay dưới phát biểu khai báo form1

như sau:

Private Sub Count()

Dim tongsobanghi, banghihienhanh As Integer

tongsobanghi = Me.BindingContext _

(DsInstructors1, "Instructors").Count

banghihienhanh = Me.BindingContext _

(DsInstructors1, "Instructors").Position + 1

lblIndexOfRecord.Text = "Record " & _

banghihienhanh.ToString & "Of " & tongsobanghi.ToString

End Sub

Thủ tục này sẽ gán thuộc tính count của đối tượng BindingContext vào

biến tongsobanghi và thuộc tính Position của nó cho biến banghihienhanh nhưng

Page 51: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

cộng thêm 1 vì thứ tự bản ghi trong bảng dữ liệu được tính từ 0. Sau đó hai giá trị

của hai biến trên được gán cho thuộc tính Text của điều khiển Label

lblIndexOfRecord.

Để thủ tục này phát huy tác dụng thì bạn sẽ thêm lời gọi thủ tục này

trong các thủ tục khác như btnFirst_Click, btnLast_Click, btnPrevious_Click,

btnNext_Click như sau:

Count()

Chương trình của chúng ta đến đây là hoàn thiện. Bạn có thể chạy thử

để kiểm tra.

Chạy chƣơng trình:

Bạn nhấn F5 để chạy chương trình. Ấn nút Load Data để hiển thị dữ

liệu. Sau đó bạn hãy nhấn các nút di chuyển để duyệt qua các bản ghi và xem thứ tự

của bản ghi đó trong bảng dữ liệu, kết quả:

- Các đối tượng khác trong mô hình ADO.NET: DataGrid….

Page 52: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

4.3. TỔNG KẾT CHƢƠNG (0.5 tiết )

- Yêu cầu SV chuẩn bị:

Đọc chương 8 các tài liệu [1], [2], chương 7 tài liệu [4]

Bài tập về nhà: bài tập tự làm chương 8 tài liệu [1]

Page 53: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 12: Thực hành chƣơng 4

Chương 4 Mục 4.1+4.2 + 4.3

Tiết thứ: 1 - 3 Tuần thứ: 12

- Mục đích, yêu cầu:

Ôn lại kiến thức chương 4;

Thực hành các thành phần của ADO.Net và cách sử dụng;

Sinh viên làm đầy đủ các bài tập về nhà

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Bài tập thực hành 3 tiết, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

BÀI THỰC HÀNH 10 (1.5 tiết)

- Câu lệnh Select

- Câu lệnh Select với các hàm, mệnh đề mở rộng

- Câu lệnh Insert

- Câu lệnh Update

- Câu lệnh Delete

BÀI THỰC HÀNH 11 (0.5 tiết)

- Kết nối CSDL trên Window Form

- Sử dụng các đối tượng dữ liệu kết nối dữ liệu

BÀI THỰC HÀNH 12 (1 tiết)

Tạo ứng dụng CSDL đơn giản: Quản lý nhân sự

- Tạo Form chính

- Tạo Form cập nhật danh mục

- Tạo Form cập nhật hồ sơ

- Hoàn thiện ứng dụng

- Yêu cầu SV chuẩn bị:

Đọc chương 8 các tài liệu [1], [2], chương 7 tài liệu [4]

Bài tập về nhà: bài tập tự làm chương 8 tài liệu [1]

Page 54: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

Bài giảng 13: Xử lý phân tán

Chương 5 Mục 5.1+5.2

Tiết thứ: 1 - 3 Tuần thứ: 13

- Mục đích, yêu cầu:

Nắm được kiến thức xử lý phân tán với REMOTING

Sinh viên đọc trước tài liệu

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, bài tập: 3t, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

5.1. GIỚI THIỆU (1 tiết)

- Ý nghĩa của xử lý phân tán

• Giảm thiểu thời gian xử lý

• Giảm vùng nhớ trung gian

• Giảm chi phí truyền thông giữa các trạm.

• Sử dụng ít tài nguyên

- Một số thuật ngữ

.NET Remoting là một kĩ thuật .NET được giới thiệu từ .NET

framework 1.1, đó là lựa chọn cho giải pháp xử lý tính toán từ xa.

.NET Remoting là một kĩ thuật cho phép một đối tượng này truy

xuất đến một đối tượng khác nằm ở các Application Domain khác nhau.

Nói cách khác, ta có thể sử dụng .NET Remoting đế gọi một chương

trình hoặc một service chạy trên một máy vi tính khác để xử lý một cái gì đó

và trả kết quả tính toán lại cho ta.

- Đặc điểm của .NET remoting

.NET Remoting truy xuất được trên nhiều giao thức khác nhau như HTTP, T

CP,...

.NET Remoting có cho phép đối tượng được truyền vào theo cả kiểu tham

chiếu

(reference) và tham trị (value)

.NET Remoting yêu cầu phía clients phải là .NET application.

- Kiến trúc của .NET Remoting

Page 55: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

5.2. .NET REMOTING (2 tiết)

-Remote Objects

- Proxy

Làm bài tập với ví dụ cho sẵn: Thiết kế chương trình Helloword sử dụng cơ sở

dữ liệu phân tán

- Yêu cầu SV chuẩn bị:

Đọc chương 1,2,3, tài liệu [2]

Bài tập về nhà: bài tập tự làm chương 1,2,3 tài liệu [2]

Bài giảng 14: Xử lý phân tán

Chương 5 Mục 5.2

Tiết thứ: 1 - 3 Tuần thứ: 14

- Mục đích, yêu cầu:

Nắm được kiến thức xử lý phân tán với REMOTING

Sinh viên đọc trước tài liệu

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, bài tập: 3t, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

5.2. .NET REMOTING (tiếp) (2 tiết)

-Channels

Page 56: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

+ HTTP Channel

+ TCP Channel

- Activation

- Các thành phần khác của .NET Remoting

5.3. TỔNG KẾT CHƢƠNG (1 tiết)

Xây dựng ứng dụng phân tán đơn giản với .NET Remoting

- Yêu cầu SV chuẩn bị:

Đọc chương 8,9, tài liệu [2]

Bài tập về nhà: bài tập tự làm chương 8,9 tài liệu [2]

Bài giảng 15: Thực hành chƣơng 5

Chương 4 Mục 5.1+5.2 + 5.3

Tiết thứ: 1 - 3 Tuần thứ: 15

- Mục đích, yêu cầu:

Ôn lại kiến thức chương 5;

Nâng cao kỹ năng thực hành

Thực hành các thành phần của xử lý phân tán;

Sinh viên làm đầy đủ các bài tập về nhà

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Bài tập thực hành 3 tiết, Tự học, tự nghiên cứu: 3t

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

BÀI THỰC HÀNH 13 (1 tiết)

Thực hành:

-Remote Objects

- Proxy

-Channels

- Activation

BÀI THỰC HÀNH 14 (2 tiết)

Xây dựng ứng dụng phân tán với .NET Remoting

Tạo ứng dụng CSDL đơn giản: Quản lý nhân sự

- Tạo Form chính

- Tạo Form cập nhật danh mục

- Tạo Form cập nhật hồ sơ

Page 57: BỘ MÔN DUYỆT T BÀI GI NG t nhóm Ch nhi m B môn (Dùng …fit.mta.edu.vn/files/DanhSach/DCBG_LTVB_ANM.pdfđoạn chương trình đơn giản trên ngôn ngữ VB.Net Nắm

- Hoàn thiện ứng dụng sử dụng phân tán với .NET Remoting

- Yêu cầu SV chuẩn bị:

Đọc chương 8,9, tài liệu [2]

Bài tập về nhà: bài tập tự làm chương 8,9 tài liệu [2]