Bài tập thực hành môn Các mẫu thiết kế hướng đối tượng - Bài thực hành số 1.2 : Xây dựng ứng dụng OOP đơn giản & tìm hiểu sự tương tác giữa các đối tượng

Trang 1  
MÔN : CÁC MẪU THIẾT KẾ HỚNG ỐI TỢNG  
Bài thực hành số 1.2 : Xây dựng ứng dụng OOP n gin  
& tìm hiểu sự tng tác giữa các ối tợng  
I. Mục tiêu :  
.
.
.
.
Giúp SV làm quen với qui trình thiết kế trực quan 1 ứng dụng Dialog Based.  
Giúp SV làm quen với việc dùng li linh kiện phần mềm.  
Giúp SV thấy cụ thể cấu trúc ứng dụng cấu thành từ các ối tợng.  
Giúp SV thấy sự tng tác giữa các ối tợng.  
II. Nội dung :  
.
.
.
.
Xây dựng ứng dụng Dialog Based cho phép ngời dùng chi các file multimedia.  
Dịch và chy chng trình.  
Debug chng trình ể tìm lỗi nếu có.  
Tìm hiểu cấu trúc ứng dụng & sự tng tác cụ thể giữa các ối tợng. V lợc ồ class của  
chng trình.  
III. Chuẩn ầu ra :  
.
Thành tho việc xây dựng 1 ứng dụng theo qui trình thiết kế trực quan.  
.
Thành tho việc dùng li linh kiện phần mềm có sẵn, thấy rõ cấu trúc phầm mềm và sự  
tng tác giữa các ối tợng trong phần mềm.  
.
Thành tho việc viết code thay ổi kích thớc và vị trí các ối tợng giao diện khi cửa sổ  
chứa chúng bị thay ổi.  
IV. Phân tích :  
.
Sau khi phân tích chức nng của chng trình, ta thấy chng trình là 1 form giao diện  
trực quan, nó chứa 1 button lay ể ngời dùng ra lệnh chi file, nó cũng cần 1 ối tợng  
cho phép ngời dùng duyệt trực quan cây th mục ể chọn file (gi sử ta biết ó là ối  
tợng FileOpenDialog). Cuối cùng chng trình cần 1 ối tợng có kh nng play file  
multimedia (gi sử ta biết ó là ối tợng Windows Media layer).  
.
Theo kết qu phân tích trên, cấu trúc chng trình cần viết khá n gin, nó chỉ chứa các  
ối tợng ã có sẵn, ta không cần phi bận tâm ặc t chi tiết các ối tợng cần dùng mà  
chỉ cần dùng li chúng, lắp ghép chúng li ể to thành chng trình. ây là trờng hợp  
may mắn nhất, nhng trong thực tế lập trình hớng ối tợng, ta s có ợc may mắn này  
thờng xuyên.  
V. Qui trình :  
1. Chy VS .Net, chọn menu File.New. roject ể hiển thị cửa sổ New roject.  
2. Mở rộng mục Visual C# trong TreeView " roject Types", chọn mục Window, chọn icon  
"Windows Application" trong listbox "Templates" bên phi, thiết lập th mục chứa roject  
trong listbox "Location", nhập tên roject vào textbox "Name:" (thí dụ MicroWM ), click  
button OK ể to roject theo các thông số ã khai báo.  
3. Form ầu tiên của ứng dụng ã hiển thị trong cửa sổ thiết kế, việc thiết kế form là quá trình  
lặp 4 thao tác to mới/xóa/hiệu chỉnh thuộc tính/to hàm xử lý sự kiện cho từng ối tợng  
cần dùng trong form.  
4. Nếu cửa sổ ToolBox cha hiển thị chi tiết, chọn menu View.Toolbox ể hiển thị nó (thờng  
nằm ở bên trái màn hình). Click chuột vào button  
ToolBox ể chuyển nó về chế ộ hiển thị thờng trực.  
(Auto Hide) nằm ở góc trên phi cửa sổ  
. Duyệt tìm phần tử Button (trong nhóm Common Controls), chọn nó, dời chuột về góc trên  
trái của form và v nó với kích thớc mong muốn. Xem cửa sổ thuộc tính của Button vừa v  
Trang 2  
(thờng ở góc dới phi màn hình), duyệt tìm và hiệu chỉnh thuộc tính Text = " lay…", duyệt  
tìm và thay ổi thuộc tính (Name) = btn lay.  
. Dời chuột vào trong cửa sổ Toolbox, duyệt tìm nhóm Components, ấn phi chuột vào mục  
Components (hay vào bất kỳ phần tử nào trong nhóm này) ể hiển thị menu lệnh, chọn  
option "Choose Items". Khi cửa sổ "Choose Toolbox Items" hiển thị, click chuột vào button  
COM Components ể hiển thị danh sách các linh kiện phần mềm theo chuẩn COM ang ợc  
Windows qun lý, hãy duyệt tìm và ánh dấu chọn vào phần tử “Windows Media layer”, rồi  
click button OK ể "add" các control này vào nhóm Components của cửa sổ Toolbox của  
roject ứng dụng. Bây giờ việc dùng control “Windows Media layer” giống y nh các iều  
khiển có sẵn khác.  
. Duyệt tìm phần tử “Windows Media layer” (trong nhóm Components), chọn nó, dời chuột  
ngay dới Button vừa v, v nó chiếm hết phần còn li của form. Xem cửa sổ thuộc tính của  
control vừa v (thờng ở góc dới phi màn hình), duyệt tìm và hiệu chỉnh thuộc tính thuộc  
tính (Name) = wmp lay.  
Sau khi thiết kế xong, Form có dng sau :  
8. Dời chuột về button btn lay, ấn kép chuột vào nó ể to hàm xử lý sự kiện Click chuột cho  
button, cửa sổ mã nguồn s hiển thị ể ta bắt ầu viết code cho hàm. Cách tổng quát ể to  
hàm xử lý sự kiện là chọn ối tợng btn lay, cửa sổ thuộc tính của nó s hiển thị, click icon  
ể hiển thị danh sách các sự kiện của ối tợng, duyệt tìm sự kiện quan tâm (Click), ấn  
kép chuột vào comboBox bên phi sự kiện Click ể máy to tự ộng hàm xử lý cho sự kiện  
này. Cửa sổ mã nguồn s hiển thị khung sờn của hàm vừa ợc to với thân rỗng, viết thân  
cho hàm này nh sau :  
private void btn lay_Click(object sender, ventArgs e) {  
//to form duyệt chọn file cần chi  
OpenFileDialog dlg = new OpenFileDialog()  
//hiển thị form duyệt chọn file cần chi  
DialogResult ret = dlg.ShowDialog()  
//kiểm tra quyết ịnh của ngời dùng, nếu ngời dùng chọn OK thì chi  
if (ret == DialogResult.OK)  
wmp Lay.URL = dlg.FileName  
}
. Chọn menu Debug.Start Debugging ể dịch và chy thử ứng dụng. Khi Form chng trình  
hiển thị, hãy click chuột vào button lay, cửa sổ duyệt chọn file s hiển thị, hãy duyệt và chọn  
1 file multimedia nào ó (nh tĩnh, film, âm thanh, file playlist,…), click button Open ể chi  
file này. Hãy thử chọn nhiều file khác nhau xem chng trình chy ổn ịnh không.  
Trang 3  
10. Dừng chng trình, dời chuột về cửa sổ “Solution xplorer”, duyệt tìm phần tử Form1, ấn  
phi chuột trên nó ể hiển thị menu lệnh, chọn lệnh “View Code” ể hiển thị li mã nguồn  
của Form chng trình, kho sát thân của hàm btn lay và tìm hiểu sự tng tác giữa ối  
tợng Form1 với các ối tợng OpenFileDialog và wmp lay.  
11. Chy li ứng dụng, quan sát góc trên phi của Form chng trình, ta thấy 3 button chức nng  
thông thờng là 1. thu nh form về dng icon, 2. phóng to/thu nh kích thớc form, 3. óng  
form :  
12. Thử click chuột vào button phóng to/thu nh, form s ợc phóng to ể chiếm hết màn hình  
nhng các ối tợng giao diện ợc thiết kế bên trong nó (button, WM ) không hề thay ổi  
kích thớc theo. Làm sao thay ổi kích thớc các ối tợng trong form theo kích thớc của  
form ?  
13. Nếu muốn phóng to/thu nh các ối tợng bên trong theo kích thớc cửa sổ, ta cần viết code  
thực hiện việc này 1 cách tờng minh, on code thay ổi kích thớc và vị trí các ối tợng  
bên trong ợc ể trong hàm xử lý sự kiện SizeChanged của ối tợng Form.  
14. Dừng chng trình, dời chuột về cửa sổ “Solution xplorer”, duyệt tìm phần tử Form1, ấn kép  
chuột trên nó ể hiển thị cửa sổ thiết kế Form, chọn Form ể hiển thị cửa sổ thuộc tính của  
nó, click icon  
ể hiển thị danh sách các sự kiện của Form, duyệt tìm sự kiện quan tâm  
(SizeChanged), ấn kép chuột vào comboBox bên phi sự kiện SizeChanged ể máy to tự  
ộng hàm xử lý cho sự kiện này. Cửa sổ mã nguồn s hiển thị khung sờn của hàm vừa ợc  
to với thân rỗng, viết thân cho hàm này nh sau :  
private void Form1_SizeChanged(object sender, ventArgs e) {  
//xác ịnh kích thớc hiện hành của Form  
int cx = this.Size.Width  
int cy = this.Size.Height  
//thay ổi vị trí của ối tợng WM về vị trí mong muốn  
wmp lay.Location = new oint (10, 40)  
//thay ổi kích thớc của ối tợng WM theo kích thớc Form  
wmp lay.Size = new Size (cx - 30, cy - 80)  
}
1 . Chy li ứng dụng, thử phóng to/thu nh, thay ổi kích thớc của cửa sổ, ta thấy ối tợng  
WM s thay ổi kích thớc theo. Riêng button thì không thay ổi vì ta không có nhu cầu và  
không viết code làm việc này.  
1 . Xem mã nguồn các class cấu thành ứng dụng rồi v lợc ồ class thiết kế của ứng dụng.  
pdf 3 trang myanh 22180 Free
Bạn đang xem tài liệu "Bài tập thực hành môn Các mẫu thiết kế hướng đối tượng - Bài thực hành số 1.2 : Xây dựng ứng dụng OOP đơn giản & tìm hiểu sự tương tác giữa các đối tượng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_tap_thuc_hanh_mon_cac_mau_thiet_ke_huong_doi_tuong_bai_t.pdf