Bài giảng lập trình hướng đối tượng

138 2 0
Tài liệu ảnh, khi tải xuống sẽ không sao chép được nội dung tài liệu
Bài giảng lập trình hướng đối tượng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bộ Giáo Dục Và Đào Tao Trường Đại Học Giao Thông Vận Tải - Bộ Môn Diéu Khién Học 000 Bai Giang Tén Hoc Phan: Lập Trình Hướng Đối Tượng Ngành: Kỹ thuật Điện tử-Truyền thông, Kỹ thuật Điện - Điện tử, Kỹ thuật điêu khiên tự động hóa Mã Học Phần: Số Tín Chỉ : DKH2.02.3 03 Người Biên Soạn: TS Lại Mạnh Dũng TRUONG BAI HOO GIAO THONG VAN TAI PHAN HIEU TAI THANH PHO HO CHI MINH THU VIEN 008925 Hà Nội, 04- 2017 LOI NOI DAU Lap trình hướng đối tượng phương pháp lập trình phd bién, sử dụng rat rong rãi dé phát triển hệ thống phần mềm với nhiều ưu điểm nỗi trội so với phương pháp lập trình hướng chức như: Có tính tiến hố, dé mở rộng, dễ bảo trì tính tái sử dụng mã nguôn cao Những năm gần đây, phát triển mạnh mẽ tảng phần mềm hỗ trợ phương pháp lập trình hướng đối tượng khẳng định vị áp đảo phương pháp lập trình Chính vậy, lập trình hướng đối tượng trở thành sô môn học bắt buộc chương trình đào tạo cơng nghệ thơng tin hầu hết trường đại học nước Trong lĩnh vực Điện- Điện tử, kỹ sư thường phải thiết kế, chế tạo hệ thống tích hợp bao gồm phần cứng phần mềm Ngoài phần : mềm nhúng hệ phần cứng trực tiếp thực chức điều khiển thiết bị, kỹ sư Điện Điện tử phải phát triển phần mềm hệ điều hành khác thực chức kết nối, điều khiển giám sát hệ phần cứng hoạt động tầng thấp Với mục tiêu cung cấp cho sinh viên ngành Điện- Điện tử cơng cụ lập trình đại, mềm dẻo dễ phát triển Tác giả đề xuất trình bày kỹ thuật lập trình hướng đối tượng sử dụng ngơn ngữ lập trình Cử để mô tả phát triển ứng dụng windows dựa nên tảng Net Framework Nội dung trình bày bao gồm chương theo định hướng tập trung vào kỹ thực hành: Chuong | TONG QUAN VE LAP TRINH HUONG DOI TUGNG Tác giả trình bày tổng quan kỹ thuật lập trình, từ lịch sử phát triển, khái niệm tới phân tích đánh giá ưu nhược điểm kỹ thuật lập trình đề cập Thơng qua khắng định ưu điểm nỗi trội phương pháp lập trình hướng đối tượng với đặc điểm phương pháp lập trình Chương NGƠN NGỮ LẬP TRÌNH C# CƠ BẢN Những nội dung ngơn ngữ lập trình C# trình bày chương như: Biến, Hăng, Toán Tử, cấu trúc lập trình cấu trúc đữ liệu Nắm bắt chương này, sinh viên sử dụng C# để lập trình tốn đơn giản theo phương pháp lập trình hướng chức Chương LỚP VÀ ĐĨI TƯỢNG Trong chương này, tác giả trình bày khái niệm lập trình hướng đối tượng Lớp, Đối tượng, kỹ thuật xây dựng Lớp sử dụng đối tượng Tác giả sử dụng C# ngôn ngữ lập trình hướng đối tượng để mơ tả khái niệm Qua đó, sinh viên nắm bắt tư lập trình hướng đổi tượng sử dụng C# để định nghĩa lớp, sử dụng đối tượng kỹ thuật liên quan Chương KÉT TẬP VÀ KẾ THỪA G3 Chương trình bày mối quan hệ lớp lập trình hướng đối tượng Đây nội dung quan trọng thể tính kế thừa phát triển lập trình hướng đơi tượng Ngồi kỹ thuật kêt tập, kê thừa, ghi đè phương thúc, chương trình bày kĩ thuật đặc chưng C# lớp trừu tượng (Abstract class), giao điện (Interface) Chương NGOẠI LỆ VÀ XỬ LÝ NGOẠI LỆ Trong trình lập trình phát triển ứng dụng phần mềm, bắt lỗi, kiểm soát lý lỗi công việc luôn phải đặt giải Dựa mơ hình trình hướng đối tượng, Net F ramework cung cấp cho lập trình viên co chế bắt lý ngoại lệ (Exception) đơn giản, mềm dẻo hiệu Nội dung ngoại lệ, bắt xử lý ngoại lệ trình bày chương xử lập xử Chương SỬ DỤNG CÁC TẬP HỢP TRONG C# Các cấu trúc liệu như: mảng, danh sách, tập hợp, bảng băm cau tric dit liệu phổ biến Lập trình viên thường xuyên phải sử dụng cầu trúc đữ liệu lập trình phát triển phần mềm Nắm bắt cầu đó, Net Framework cung cap cho lập trình viên tảng sẵn có để đễ dàng lập trình thao tác với câu trúc liệu dạng Nội dung chương trình bày cách sử dụng số tập hợp ngơn ngữ lập trình C# Chương THAO TÁC VỚI TẬP TIN VÀ LUÔNG XUẤT NHẬP Đối với ứng dụng thao tác với liệu chức nhập xuất thơng tin ln ln phải để cập giải Trong chương này, tác giả trình bày luồng nhập/xuất, cách sử dụng lớp hỗ trợ sẵn Net Framework để nhập/xuất thông tin dùng ngôn ngữ lập trình C# mơ tả nhập xuất thơng tin định dạng file lưu trữ windows Chương XÂY DỰNG GIAO DIEN GUI Với mục tiêu trang bị cho sinh viên cơng cụ lập trình đại, mềm dẻo dễ sử dung dé phat triển phần mềm thực chức kết nối, điều khiển, giám sát xây dựng giao diện GUI nội dung quan trọng cần thiết Chương trình bày window controls sử dụng để xây dựng giao diện người dùng windows Kết lại, nội dung giảng trình đối tượng, sử dụng ngơn ngữ lập đối tượng cách khai thác Framework để dễ dàng sử dụng bày khái niệm trình Cứ để mơ tả kỹ thuật tảng sẵn có cung ngơn ngữ lập trình C# phát triển lập trình hướng lập trình hướng câp Net phần mềm hệ điều hành windows Trong trình biên soạn tài liệu này, tac gia da rat cd găng đê hoàn thiện, song khơng thê tránh khỏi thiêu sót, rât mong nhận ý kiên đóng góp đơng nghiệp em sinh viên! Chuong TONG QUAN VE LAP TRINH HUONG DOI TUONG 1.1 CAC KY THUAT LAP TRINH 1.1.1 Lap trinh tuyén tinh Cách tiếp cận lập trình tuyến tính lỗi tư Các câu lệnh chương trình thực tuân tự từ đâu tới ci theo trình tự xt hiện, lệnh kê tiệp lệnh kết thúc chương trình Các chương trình máy tính lập trình mã nhị phân, sử dụng cơng tắc khí để nạp chương trình.Sau chương trình liệu đạng nhị phân thể việc có hay khơng xuất lỗ đục mộttắm bìa (punched card) vỊ trí định trước a I l I1 l mare IE II OCF GPU UN I um tn ot oe | 001030130100Ể02001000656301909900030091Ẩ1055594015003018E s0 tin iin l I 4oEsEfottoonitoen nHhNHMDI BH TH1111111Ñ111111111111111111111111111111117117111111811111111111171111E111111 1122111221111111121111122Ề21221211211112111211212111122 2112111111111 212112211112 33133113311131331213Ä311231337131311131111173E311212111EÑ311311121112311713 44444441444/144641420024/3144441440444114/144001444444414404144 SSSSSSSSESSSSSSSMSMSSSSSSSHSSHSSSSSSSMMSSSESSHSSSSSSSSSHSSSSMSSSSSSSSSSSSS555555 GEETSEESE6E5656666EEEEEEE6E6EEGECGEEEE60E6555G60566566EEEEGEEESEEEESEES6E6E 1111111111Ñ111111111111111117111111111111111111111111111171111111111711111111111 ÿ10110110133001301011111911115311831611101111011111501101911131111101101 016 ƠỆ3933311133331113831131114313931931130911135151331195593311551113381851111338 Hình (1.1) Chương trình máy tính bìa đục lỗ Sau này, yêu cầu xử lý liệu lớn hơn, chương trình máy tính phức tạp hơn, nhiêu câu lệnh hơn, việc sử dụng bit nhị phân tỏ rât hạn chê Vì đề lập trình người ta sử dụng câu lệnh gân với tiêng Anh gọi ngơn ngữ lập trình sau chương trình dịch dịch câu lệnh sang ngôn ngữ máy đề thực thi.Các ngôn ngữ lập trình đâu tiên thiệt kê đề lập chương trình làm cơng việc tươngđơi đơn giản tính tốn Phân lớn chương trình tương đơi ngăn Đặc trưng e© Đơn giản: Chương trình thực cách đơn giản theo lối e Đơn lng: Chỉ có lng nhât câu lệnh thực tn tự theo lng chương trình Bản thân chương trình tương đơi ngắn câu lệnh Tính chất © e Ưu điểm: Đơn giản, dễ hiểu Lập trình tuyến tính ứng dụng cho chương trình đơn giản Nhược điêm: Khó thực đôi với ứng dụng phức tạp Ngôn ngữ lập trình tuyến tính khơng có khả kiểm sốt phạm vi nhìn thấy liệu Mọi dữliệu chương trình đữ liệu tồn cục nghĩa chúng có thé bị sửa đổi bat ky phần củachương trình Việc dị tìm thay đổi khơng mong muốn phần tur dit ligu dãy mã lệnhdài vòng làm cho lập trình viên mắt thời gian 1.1.2 Lập trình cấu trúc Khi khả máy tính tăng lên nhu cầu thực thi chương trình phức tạp tănglên Các ngơn ngữ lập trình đòi hỏi cao Cácphương tiện cần thiết để sử dụng lại mã chương trình viết khơng có ngơn ngữ lậptrình tuyến tính Thật ra, đoạn lệnh thường chép lặp lại dùng nhiềuchương trình, chương trình dài dịng Thêm việc chương trình thườngđược điều khiểnđể nhảy đến nhiều chỗ nên logic chương trình khó hiểu la Về chất, chương trình chia nhỏ thành chương trình riêng rẽ (cịn gọi hàm hay thủ tục)thực công việc rời rạc trình lớn hơn, phức tạp Các hàm giữ độc lậpvới cảng nhiều tốt, hàm có liệu logic riêng Thơng tin chuyển giao hàmthông qua tham số, hàm có biến cục mà bên ngồi phạm vi hàmkhơng thể truy xuất chúng Như vậy, hàm xem chương trình đặt chungvới để xây dựng nên ứng dụng Một khái niệm lớn đưa lập trình có cấu trúc trừu tượng hóa (Abstraction) Sựtrừu tượng hóa xem khả quan sát việc mà không cần xem xét đến tiết bêntrong Trong chương trình có cấu trúc, cần biết hàm cho làm mộtcơng việc cụ thé đủ Cịn làm mà cơng việc lại thực khơng quan trọng, chùngnào hàm cịn tin cậy cịn dùng mà khơng cần phải biết thực đắn chức năngcủa Điều gọi trừu tượng hóa theo chire nang (Functional abstraction) va lanén tang cia l4p trinh cd cấu trúc Các ngơn ngữ lập trình cấu trúc phô biến Pascal, C C++ Riêng C++ ngồi việc có đặc trưng lập trình cấu trúc kế thừa từ C, cịn có đặc trưng lập trình hướng đối tượng Cho nên C++ cịn gọi ngơn ngữ lập trình nửa.cẫu trúc, nửa hướng đối tượng Đặc trưng Đặc trưng lập trình cầu trúc thể mối quan hệ: Chương trình = Cấu trúc liệu + Giải thuật Trong đó: e_ Cấu trúc liệu cách tổ chức liệu, cách mơ tả tốn dạng ngơn e_ ngữ lậptrình Giải thuật quy trình đề thực cơng việc xác định Trong chương trình, giải thuật có quan hệ phụ thuộc vào câu trúc liệu: e e e Một cấu trúc liệu chi phù hợp với số hạn chế giải thuật Nêu thay đôi câu trúc liệu phải thay đơi giải thuật cho phù hợp Một giải thuật thường phải kèm với câu trúc liệu nhât định Tính chất e e e Mỗi chương trình gọi thực nhiều lần chương trình Các chương trình gọi đến để thực theo thứ tự bất kì, tuỳ thuộc vào giải thuật chương trình mà khơng phụ thuộc vào thứ tự khai báo chương trình Các ngơn ngữ lập trình cấu trúc cung cấp số cấu trúc lệnh điều khiển chương trình Ưu điểm e Chương trình sáng sủa, dễ hiểu, dễ theo dõi se Tư giải thuật rõ ràng Nhược điểm e e Lập trình cầu trúc không hỗ trợ việc sử dụng lại mã nguồn: Giải thuật phụ thuộc chặt chẽ vào cầu trúc liệu, đó, thay đổi cầu trúc liệu, phải thay đổi giải thuật, nghĩa phải viết lại chương trình Khơng phù hợp với phần mềm lớn: tư cấu trúc với giải thuật chi phủ hợp với toán nhỏ, năm phạm vi modul chương trình Với dự án phân mềm lớn, lập trình cấu trúc tỏ khơng hiệu việc giải mối quan hệ vĩ mơ modul phần mềm 1.2 LẬP TRÌNH HƯỚNG ĐĨI TƯỢNG Xuất phát từ hai hạn chế phương pháp lập trình cấu trúc: e© e Khơng quản lí thay đổi liệu có nhiều chương trình thay đổi biến chung Vấn đề đặc biệt nghiêm trọng ứng dụng ngày lớn, người ta khơng thể kiểm sốt truy nhập đến bién đữ liệu chung Không tiết kiệm tài nguyên người: Giải thuật gắn liền với cấu trúc liệu, thay đổi cấu trúc liệu, phải thay đổi giải thuật, đó, phải viết lại mã chương trình từ đầu Để khắc phục hai hạn chế giải toán lớn, người ta xây dựng phương pháp tiếp cận mới, phương pháp lập trình hướng đối tượng, với hai mục đích chính: e Đóng gói liệu để hạn chế truy nhập tự vào đữ liệu, khơng quản lí e Cho phép sử dụng lại mã nguồn, hạn chế việc phải viết lại mã từ đầu cho chương trình Việc đóng gói liệu thực theo phương pháp trừu tượng hoá đối tượng thành lớp từ thấp lên cao sau: Thu thập thuộc tính đối tượng, gắn thuộc tính vào đối tượng tương ứng Nhóm đối tượng có thuộc tính tương tự thành nhóm, loại bỏ bớt thuộc tính cá biệt, giữ lại thuộc tính chung Đây gọi q trình trừu tượng hố đối tượng thành lớp Đóng gói liệu đối tượng vào lớp tương ứng Mỗi thuộc tính đối tượng trở thành thuộc tính lớp tương ứng Việc truy nhập liệu thực thông qua phương thức trang bị cho lớp Không truy nhập tự trực tiếp đến đữ liệu Khi có thay đổi liệu đối tượng, ta cần thay đổi phương thức truy nhập thuộc tính lớp, mà khơng cần phải thay đổi mã nguồn chương trình sử dụng lớp tương ứng Việc cho phép sử dụng lại mã nguồn thực thông qua chế kế thừa lập trình hướng đối tượng Theo đó: “ Các lớp kế thừa để tận dụng thuộc tính, phương thức Trong lớp dẫn xuất (lớp kế thừa) sử dụng lại phương thức lớp sở(ớp bị lớp khác kế thừa) mà không cần thiết phải cai dat lai ma nguôn Ngay lớp dẫn xuất định nghĩa lại phương thức cho mình, lớp sở khơngbị ảnh hưởng khơng phải sửa lại đoạn mã nguồn nao Ngơn ngữ lập trình hướng đối tượng phổ biến Java C++ Tuy nhiên, C?+? có đặc trưng lập trình hướng đối tượng khơng phải ngơn ngữlập trình hướng đối tượng Java thật ngơn ngữ lập trình hướng đối tượng Đặc trưng Lập trình hướng đối tượng có hai đặc trưng bản: Đóng gói liệu: liệu ln tổ chức thành thuộc tính lớp đối tượng Việctruy nhập đến liệu phải thông qua phương thức đối tượng lớp Sử dụng lại mã nguồn: việc sử dụng lại mã nguồn thê thông qua chế kếthừa Cơ chế cho phép lớp đối tượng kế thừa từ lớp đối tượng khác Khiđó, lớp kế thừa, sử dụng phương thức (mã nguồn) lớp bị kếthùa, mà không cần phải định nghĩa lại Trong lập trình hướng đối tượng có: Đối tượng = Phương thức + Dữ liệu Ưu điểm Lập trình hướng đối tượng có số ưu điểm bật: e e e e_ Khơng cịn nguy liệu bị thay đổi tự chương trình Vì liệu đónggói vào đối tượng Nếu muốn truy nhập vào liệu phải thông qua phương thứccho phép đối tượng Khi thay đổi cấu trúc đữ liệu đối tượng, không cần thay đổi đổi mã nguồn củacác đối tượng khác, mà cần thay đổi số hàm thành phần đối tượng bị thay đôi.Điều hạn chế ảnh hưởng xấu việc thay đổi liệu đến đối tượng kháctrong chương trình Có thể sử dụng lại mã nguồn, tiết kiệm tài nguyên Vì nguyên tắc kế thừa cho phép cáclớp kế thừa sử dụng phương thức kế thừa từ lớp khác phương thứccủa nó, mà khơng cần thiết phải định nghĩa lại Phù hợp với dự án phần mềm lớn, phức tạp 1.3 LAP TRINH HUONG DOI TƯỢNG BẰNG NGƠN NGỮ C# Thơng thường, để mơ tả đầy đủ kỹ thuật lập trình hướng đối tượng, người ta thường sử dụng ngơn ngữ lập trìnhJava- ngơn ngữ lập trình thn hướng đơi tượng C++, Tuy nhiên, với hai mục tiêu đặt ra: dễ dàng tiếp cận, giảm đáng kể thời gian tìm hiểu kỹ thuật lập trình hướng đối tượng để phát triển ứng dụng hệ điều hành windows, hai sử dụng thành thạo công cụ phát triển Visual Studio netứng dụng lĩnh vực điện điện tử nên tác giả sử dụng ngơn ngữ lập trình C# để trình bày kỹ thuật lập trình hướng đối tượng với lý sau C# ngôn ngữ đơn ngôn ngữ Java thừa, lớp sởảo nhằm lẫn hay dẫn đến giản: C# loại bỏ vài phức tạp rối rắm c++,bao gồm việc loại bỏ macro, template, đa kế (virtual base class) Chúnglà nguyên nhân gây vấn đề cho người phát triển C# ngôn ngữ đại:Điều làm cho ngơn ngữ đại? Những đặc tính xử lý ngoại lệ,thu gom nhớ tuđộng, kiêu liệu mở rộng, bảo mật mã ngn đặc tính mongđợi ngôn ngữ đại C# chứa tất đặc tính C# ngơn ngữ hướng đối tượng: Những đặc điểm ngơn ngữ hướng đối tượng (Object-orientedlanguage) sudéng gói _(encapsulation), kê thừa (inheritance), vada hinh (polymorphism) C# tro tatca cdc dac tinh trén C# ngôn ngữ mạnh mẽ mềm dẻo: C# sử dụng cho nhiều dựán khác tạora ứng dụng xử lý văn bản, ứng dụng họa, tính Chuong NGON NGU LAP TRINHC# CO BAN 2.1 UNG DUNG CONSOLE Ứng dụng console chương trình máy tính thiết kế sử dụng chế độ 14 văn bản, giao tiếp với người dùng thơng qua bàn phím, hiển thị thơng tỉn lên hình dạng văn mà khơng có giao diện đồ họavới người dùng (GU]) ứng dụng thường thấy Windows Một số ví dụ ứng dụng console thấy như: Hình (2.1) - Giao diện dịng lệnh hệ điều hành Unix, Error! Reference source not found - Giao diện chương trình soạn thảo chế độ văn —_ " => sưu oii} ef LT Se > se See Ắ dose men me Et =se TP i Hi oe mT " ii nh (2.2) Chương trình Soạnn thảo văn FreeDos Edit 10 Bước đầu để đơn giản hóa việc tìm hiểu kỹ thuật lập trình hướng đối tượng dùng ngơn ngữ C# để mô tả kỹ thuật này, hạn chế phức tạp phải thiết kế giao điện đồ họa ta viết ứng dụng console Sau đó, chương VII ta tìm hiểu sử dụng thư viện dé xây dựng ứng dụng có giao diện đồ họa Windows Vi du (2.1) Tạo dự án C# console Bước 1: Mở Visual Studio Bước 2: Chọn menu File->New->ProJect để tạo dự án console based với tên ‘First_prg’ va tên Solution Session01 Hình (2.3) Ne -1 Project types: Templates: Business Intelligence Projects : Visual C# , : \ «NET Framework 3.5- i vse aa Be, &, ASP.NET Web Service Application ret Smart Device Office : Database JADE Browser Application 12007 Workbook ay xa utlock 2007 Add-in © : Reporting i 5515 ScriptCemp onent ee @2i Class Library Windows Web Ỉ we WCF Service Application Nord 2007 Document SSIS_ScriptTask ick! Test 485 Windows Forms Control Librany Search Online Templates WCF Workflow Other Languages Other Project Types Test Projects A project for creating a Command-line application (ET Framework 3.5} Name: at Location l‡ Selution: | Create b2 “) Solution Name: i Sessio n01 | First_prg Ỉ : C+\Users\Do\Decuments\Visual Studia 20084 Projects nas 5n aot won xi vi - _ Browse ————E-Erieeeekoe Y Create directory for solution xỉ | b ⁄0K - TL Ganges, | & - Hình (2.3) Cửa số tạo dự đn Bước 3: Đổi tên lớp file class ‘program.cs‘ ‘First_prg.cs’ Bước 4: Chèn mã vào file “First_prg.cs” bên using System; class Example _ Static _ void Main(string[] args) Console.WriteLine("This C#⁄);- os PS is the Tae „ €Console ReadLine.()' fey 11 i : my oe first program cố using; tụ ~ + Hình (8.21) Ví dụ Tree View 8.3.6 ListView ListView control cho phép thể liệu dạng bảng icon items & — LinkLabel ey ListBox 222 ListView MaskedTetBex MonthCalendar mi Motfylcon Các thuộc tính hay dùng: Columns — danh sách cột, ltems — danh sách phần tử liệu, FullRowSelect — cho phép chọn dịng liệu, View — Hình thức thị phân tử bao gồm: Largelcon, Smalllcon, Detail, List Mỗi phần tử liệu Item ListView ListViewltem có thuộc tính: Text, Imagelndex, Subltems (dùng thuộc tính View cua List View dang Detail) Ví dụ (8.3) Tạo ListView có cột với2 dịng liệu privatevoid Form1 listViewl View Load(object sender,, = View.Details; listViewl.Items.Clear();_ listViewl.Columns.Clear listViewl.FullRowSelect EventArgs () ; = true; -1istView1 Columns Add (newColumnHeader ()); listViewl.Columns Add (newColumnHeader () ); ‘ ListViewl.Columns Add (newColumnHeader [0] Text -.1istView1.Columns[1].Text listView1.Columns[2].Text for’ (int t= 07 125 i k=27 i “tp listViewl Columns = -"Cét = "Cột = "Cột i++) (\); 1"; 2"; 3"; e)., ListViewItem item i .ToString()); = newli stviewItem("Dong », item SubTtems Ädd ("Giá - dtem.SubItems.Add("Gia trí tri listViewl items Add (item); + " Thi, ToString ()); " + i ToString().); ` ng v Trong kiện Forml_ Load ta thiết lập thuộc tính cho listView1 bao gồm: View — Hinh thire hién thi 1a chi tiết View.Details, FullRowSelect đặt true để ta chọn dịng Lần lượt thiết lập tiêu đề cột là: Cột 1, Cột 2, Cột Thudc tinh Columns 1a danh sach cac cét cla ListView, cdc cét dugc gan cac sô bắt đâu từ Vong lap for tao lap cac phần tử liệu ListViewltem dé Add vao ListView theo dịng Mỗi dịng có Sublfems tương ứng với cột Cộti2 Dịngđ Giátj0 Cội3 Giátjữ „ Dang # RE I Ợ vàn VU GHANNHI AM RSA NE SC “PSST Cộii IN eee Hinh (8.22) Giao dién co ListView 8.3.7 ContextMenuStrip Cho phép thiết kế menu ngữ cảnh để gán cho control nao trén giao diện Menu ngữ cảnh menu xuât người dùng nhân chuột phải lên control gán với Wea Pointer ‘ContextMenuStrip | hdenuStrip StatusStrip fe ToalStrip ToolStripContainer Hinh (8.23) Menu ngit canh Dé gan menu ngữ cảnh vào control ta viết theo cú pháp .ContextMenuStrip = Trong đó: tên control gán Menu ngữ cảnh, tên Menu ngữ cảnh thiết kế đưa vào dự án 126 Ví dụ (8.4) Gán menu ngữ cảnh vào ListView ví dụ Kéo thả ContextMenuStrip vào dự án thiết kế Menu ngữ cảnh gồm có mục chọn là: Sửa Xóa Cách thiệt kê menu ngữ cảnh tương tự thiệt kê MenuStrip cho hình trình bày trước Hình (8.24) Tạo Menu ngữ cảnh Trong kiện FormlI_ Load thiết lập thêm thuộc tính | listViewl.ContextMenuStrip =.contextMenuStripl; Tủ, Giá trị ñ Thun St Si Stra Xda TEE cee AI SRE IS SS SS ORS er Hình (8.25) Gắn Menu ngữ cảnh vào ListView 8.3.8 ErrorProvider ErrorProvider cho phép xuất thơng báo gắn với control để cảnh báo người sử dụng xuât lỗi q trình tương tác với giao diện hình Biêu tượng thơng báo đặt canh control duge gan Dùng ErrorProvider tạo giao diện thân thiện so với việc dùng Label hay MessageBox đê đưa cảnh báo lết G@ By ce € Be ` G4 DirectorySearcher ErrorProvider EventLog FileSystem Watcher HelpProvider Hinh (8.26) ErrorProvider 127 | Ví dụ (8.5) Thiết kế hình đăng nhập có cảnh báo lỗi '© Tên đầngnhập' Mậtkhẩu: - - mrrrecrvevetrexlxetrerrererrrrrrrrrrrrrxrtrvTrrxermerrtrer.tfrrvverrrrrrrirrrs Ỉ @ errorProvider1 Hình (8.27) Form đăng nhập có ErrorProvider Thiết kế hình đăng nhập với control: - Label Tén dang nhập, Label Mật ; TextBox đê nhập Tên đăng nhập đặt tên txfTenDangNhap, TextBox dé nhập mitt khâu đặt tên txtMatKhau với thuộc tính UseSystemPasswordChar = true đề liệu người dùng nhập vào hiên thị dạng PasswordChar Button dang nhap đặt tên btnDangNhap, Button thoát đặt tên btnThoat Kéo thả vào dự án control ErrorProvider để tên ngầm định errorProvider1 Trong kiện Click vào nút btnDangNhap ta viết đoạn mã lệnh xử lý kiện sau Nếu click chuột vào nút đăng nhập mà người dùng chưa nhập tên đăng nhập errorProviderl SetError cho txfIenDangNhap với thông báo lôi tương ứng Tương tự đôi với trường hợp người dùng không nhập mật khâu, errorPrividerl 128 SetError cho txtMatKhau với thông báo lỗi tương ứng Kết chạy chương trình ta có hinh sau -Tên đắng nhập: _— —_—_—_— Sea ae [ Bạn chưa nhấp tến đẳng nhập: I — Hình (8.28) Màn hình đăng nhập với thông báo lỗi - 8.3.9 DateTimePicker DateTimePicker control cho phép nhập hiển thị liệu kiểu ngày tháng với giao diện thân thiện Bo CheckedListBox ComboBox DateTimePicker Label LinkLabel ListBox Hinh (8.29) DateTimePicker Thuộc tính: Value dùng để lấy giá trị thang kiéu DateTime Vị dụ (8.6) Xây dựng giao diện có DateTimePicker để chọn ngày tháng - Kéo thả DateTimePicker vào dự án Chạy ứng dụng xuất giao diện cho phép người dùng chọn ngày tháng dạng bảng Bo : ‘Saturday i H | Sun Mon, Tue Wed Thư Fri Sat’ se 18 25 12 19 26 113 129 ` Decernber; 2016 [a , December-31/2016 73 50 20 77 21 38 13 if 10 22 23 28 .30 24 15 16 -E—_] Tdday: 12/31/2016 17 FE Hinh (8.30) Giao điện có DateTimePicker thực thi 8.3.10 TabControl Tabcontrol cho phép chia giao điện thành nhiều hình theo thiết kế tab Leesa oo Thuộc tính: TabPages Hình (6.31) Tab control 130 BAI TAP CHUONG Thiét ké giao dién nhw hinh vé hién thi thông tin SinhVien, CanBoLop da dé cap bai tap Chuong ‘a Quan ly sinh vig Ma sinh vién SVim | Giditinh â Nam Ho tộn H202 đ Na 2x2 2282126 xen Tran Thi Bich Điểm me Sư nhat 2srgn,02HM22kpmghitttee § Â=Z XS {he Kỹ thuật điện tử aa dnnlicaorconetergpemeeenttonnee Điểm thưởng _ xếp loại [Trung Bình j RAN ANEMIA ENN OE RR LE aE Chuyên ngãnh - Lập trình nút chức di chuyển ghi thơng tin đối tượng có danh sách - Lập trình nút chức cho phép Thêm, Sửa, Xố ghi thơng tin cho đơi tượng danh sách Thiết kế giao diện hình vẽ hiển thị thơng tin HangHoa, HangGiamGia đề cập tập Chương coop namespace : g1 Qụ any Hang hoa Seuss ammyomy nani ween ceinanas uate seme vere Ma hang: Ténhang: Số lượng: Giá bán: Téndong: May tinh Sony - COO Glam gid ae van 1258000 ị (480000 `: Tilệ: CỬ - Lập trình nút chức di chuyển ghi thơng tin đối tượng có danh sách - Lập trình nút chức cho phép Thêm, Sửa, Xố ghi thơng tin cho đơi tượng danh sách Thiết kế giao diện hình vẽ hiển thị thơng tin NhanVien, CanBoQuanLy Mã nhân viên: _ W2 NV ere.% B8Her,H9 er INVB01 Tran Van Chink Phỏng ban ee Phongkinkdoanh: FE] Can quản lý: STE Sr OT Ao TL SE EEEO SR ET TE NRE OL ni - Lập trình nút chức di chuyển ghi thông tin đối tượng có danh sách - Lập trình nút chức cho phép Thêm, Sửa, Xố ghi thơng tin cho đơi tượng danh sách 132 TAI LIEU THAM KHAO [1] MSDN Library:.NET development in MSDN provided by Microsoft Academics Alliance (or http://msdn.microsoft.com/en-us/library) {2} Andrew Troelsen, Pro CSharp 2008 and the Net 3.5 Platform, Fourth edition, Apress 2008 [3] Phạm Hữu Khang, Trần Tiến Dũng, C# 2005, NXB Lao động xã hội [4] Dương Quang Thiện, C# bản, NXB Tổng hợp HCM, 2008 [5] Phạm Văn At, C++ Lập trình hướng đối tượng, NXB Giao Thông Vận Tải, 2000 133 DANH MUC HINH VE Hình (1.1) Chương trình máy tính trén bia duc 16 ccccscecssesscsecessesessseseessscacstssseceeees Hình (2.1) Giao điện đòng lệnh hệ điều hành Unix .2 se s2 xezeszxz£- 10 Hình (2.2) Chương trình soạn thảo văn Freelos EdI( 55555 sc

Ngày đăng: 31/05/2023, 13:05

Tài liệu cùng người dùng

Tài liệu liên quan