Microsoft Word Bai 3 1 doc Trang 1 MÔN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 3 1 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ìn[.]
Trang MƠN : LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài thực hành số 3.1 : Xây dựng ứng dụng OOP ₫ơn giản & tìm hiểu tương tá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 ứ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ừ ₫ối tượng Giúp SV thấy tương tá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 file multimedia Dịch chạy chương trình Debug chương trình ₫ể tìm lỗi có Tìm hiểu cấu trúc ứng dụng & tương tác cụ thể ₫ối tượng III Chuẩn ₫ầu : Thành thạo việc xây dựng ứ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 tương tác ₫ối tượng phần mềm Thành thạo việc viết code thay ₫ổi kích thước vị trí ₫ối tượng giao diện cửa sổ chứa chúng bị thay ₫ổi IV Phân tích : Sau phân tích chức chương trình, ta thấy chương trình form giao diện trực quan, chứa button Play ₫ể người dùng lệnh chơi file, cần ₫ối tượng cho phép người dùng duyệt trực quan thư mục ₫ể chọn file (giả sử ta biết ₫ó ₫ối tượng FileOpenDialog) Cuối chương trình cần ₫ối tượng có khả play file multimedia (giả sử ta biết ₫ó ₫ối tượng Windows Media Player) Theo kết phân tích trên, cấu trúc chương trình cần viết ₫ơn giản, chứa ₫ối tượng ₫ã có sẵn, ta khơng cần phải bận tâm ₫ặc tả chi tiết ₫ối tượng cần dùng mà 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 trường hợp may mắn nhất, thực tế lập trình hướng ₫ối tượng, ta có ₫ược may mắn thường xuyên V Qui trình : Chạy VS Net, chọn menu File.New.Project ₫ể hiển thị cửa sổ New Project Mở rộng mục Visual C# TreeView "Project Types", chọn mục Window, chọn icon "Windows Application" listbox "Templates" bên phải, thiết lập thư mục chứa Project listbox "Location", nhập tên Project vào textbox "Name:" (thí dụ MicroWMP), click button OK ₫ể tạo Project theo thông số ₫ã khai báo Form ₫ầu tiên ứng dụng ₫ã hiển thị cửa sổ thiết kế, việc thiết kế form q trình lặp thao tác tạo mới/xóa/hiệu chỉnh thuộc tính/tạo hàm xử lý kiện cho ₫ối tượng cần dùng form Nếu cửa sổ ToolBox chưa hiển thị chi tiết, chọn menu View.Toolbox ₫ể hiển thị (thường (Auto Hide) nằm góc phải cửa sổ nằm bên trái hình) Click chuột vào button ToolBox ₫ể chuyển chế ₫ộ hiển thị thường trực Duyệt tìm phần tử Button (trong nhóm Common Controls), chọn nó, dời chuột góc trái form vẽ với kích thước mong muốn Xem cửa sổ thuộc tính Button vừa vẽ (thường góc phải hình), duyệt tìm hiệu chỉnh thuộc tính Text = "Play…", duyệt tìm thay ₫ổi thuộc tính (Name) = btnPlay Trang Dời chuột vào cửa sổ Toolbox, duyệt tìm nhóm Components, ấn phải chuột vào mục Components (hay vào phần tử 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 linh kiện phần mềm theo chuẩn COM ₫ang ₫ược Windows quản lý, duyệt tìm ₫ánh dấu chọn vào phần tử “Windows Media Player”, click button OK ₫ể "add" control vào nhóm Components cửa sổ Toolbox Project ứng dụng Bây việc dùng control “Windows Media Player” giống y ₫iều khiển có sẵn khác Duyệt tìm phần tử “Windows Media Player” (trong nhóm Components), chọn nó, dời chuột Button vừa vẽ, vẽ chiếm hết phần lại form Xem cửa sổ thuộc tính control vừa vẽ (thường góc phải hình), duyệt tìm hiệu chỉnh thuộc tính thuộc tính (Name) = wmpPlay Sau thiết kế xong, Form có dạng sau : Dời chuột button btnPlay, ấn kép chuột vào ₫ể tạo hàm xử lý kiện Click chuột cho button, cửa sổ mã nguồn 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ý kiện chọn ₫ối tượng btnPlay, cửa sổ thuộc tính hiển thị, click icon ₫ể hiển thị danh sách kiện ₫ối tượng, duyệt tìm kiện quan tâm (Click), ấn kép chuột vào comboBox bên phải kiện Click ₫ể máy tạo tự ₫ộng hàm xử lý cho kiện Cửa sổ mã nguồn hiển thị khung sườn hàm vừa ₫ược tạo với thân rỗng, viết thân cho hàm sau : private void btnPlay_Click(object sender, EventArgs 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 ₫ịnh người dùng, người dùng chọn OK chơi if (ret == DialogResult.OK) wmpPLay.URL = dlg.FileName; } Chọn menu Debug.Start Debugging ₫ể dịch chạy thử ứng dụng Khi Form chương trình hiển thị, click chuột vào button Play, cửa sổ duyệt chọn file hiển thị, duyệt chọn file multimedia ₫ó (ảnh tĩnh, film, âm thanh, file playlist,…), click button Open ₫ể chơi file Hãy thử chọn nhiều file khác xem chương trình chạy ổn ₫ịnh khơng 10 Dừng chương trình, dời chuột cửa sổ “Solution Explorer”, duyệt tìm phần tử Form1, ấn phải chuột ₫ể hiển thị menu lệnh, chọn lệnh “View Code” ₫ể hiển thị lại mã nguồn Trang Form chương trình, khảo sát thân hàm btnPlay tìm hiểu tương tác ₫ối tượng Form1 với ₫ối tượng OpenFileDialog wmpPlay 11 Chạy lại ứng dụng, quan sát góc phải Form chương trình, ta thấy button chức thông thường thu nhỏ form dạng icon, phóng to/thu nhỏ kích thước form, ₫óng form : 12 Thử click chuột vào button phóng to/thu nhỏ, form ₫ược phóng to ₫ể chiếm hết hình ₫ối tượng giao diện ₫ược thiết kế bên (button, WMP) khơng thay ₫ổi kích thước theo Làm thay ₫ổi kích thước ₫ối tượng form theo kích thước form ? 13 Nếu muốn phóng to/thu nhỏ ₫ối tượng bên theo kích thước cửa sổ, ta cần viết code thực việc cách tường minh, ₫oạn code thay ₫ổi kích thước vị trí ₫ối tượng bên ₫ược ₫ể hàm xử lý kiện SizeChanged ₫ối tượng Form 14 Dừng chương trình, dời chuột cửa sổ “Solution Explorer”, duyệt tìm phần tử Form1, ấn kép chuột ₫ể hiển thị cửa sổ thiết kế Form, chọn Form ₫ể hiển thị cửa sổ thuộc tính nó, click icon ₫ể hiển thị danh sách kiện Form, duyệt tìm kiện quan tâm (SizeChanged), ấn kép chuột vào comboBox bên phải kiện SizeChanged ₫ể máy tạo tự ₫ộng hàm xử lý cho kiện Cửa sổ mã nguồn hiển thị khung sườn hàm vừa ₫ược tạo với thân rỗng, viết thân cho hàm sau : private void Form1_SizeChanged(object sender, EventArgs e) { //xác ₫ịnh kích thước hành Form int cx = this.Size.Width; int cy = this.Size.Height; //thay ₫ổi vị trí ₫ối tượng WMP vị trí mong muốn wmpPlay.Location = new Point (10, 40); //thay ₫ổi kích thước ₫ối tượng WMP theo kích thước Form wmpPlay.Size = new Size (cx - 30, cy - 80); } 15 Chạy lại ứng dụng, thử phóng to/thu nhỏ, thay ₫ổi kích thước cửa sổ, ta thấy ₫ối tượng WMP thay ₫ổi kích thước theo Riêng button khơng thay ₫ổi ta khơng có nhu cầu khơng viết code làm việc ... (10, 40); //thay ₫ổi kích thước ₫ối tượng WMP theo kích thước Form wmpPlay.Size = new Size (cx - 30, cy - 80); } 15 Chạy lại ứng dụng, thử phóng to/thu nhỏ, thay ₫ổi kích thước cửa sổ, ta thấy ₫ối