Đăng ký Đăng nhập
Trang chủ Xây dựng ứng dụng webbrowser...

Tài liệu Xây dựng ứng dụng webbrowser

.PDF
28
1
68

Mô tả:

TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN -----***----- BÁO CÁO BÀI TẬP LỚN HỌC PHẦN “LẬP TRÌNH WINDOWS” Đề tài: XÂY DỰNG ỨNG DỤNG WEBBROWSER GVHD: ThS. Nguyễn Hạnh Phúc Sinh viên thực hiện: Nguyễn Thị Thu Hà – MSV: 63676 Lê Thị Ngọc Hạnh – MSV: 63677 Hải Phòng, tháng 04 năm 2018 TRƯỜNG ĐẠI HỌC HÀNG HẢI KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN KHOA HỌC MÁY TÍNH -----***----- BÀI TẬP LỚN HỌC PHẦN: LẬP TRÌNH WINDOWS Mã đề tài: 20 1. Tên đề tài Xây dựng ứng dụng WebBrowser 2. Mục đích Xây dựng ứng dụng WebBrowser bằng C# 3. Công việc cần thực hiện  Thiết kế ứng dụng: các chức năng, Forms và Reports  Cài đặt chương trình ứng dụng, nhập liệu, chạy thử và kiểm tra lỗi  Làm báo cáo bài tập lớn  Bảo vệ bài tập lớn 4. Yêu cầu  Kết quả làm bài tập lớn: Báo cáo bài tập lớn  Báo cáo bài tập lớn phải được trình bày theo mẫu quy định (kèm theo), báo cáo có thể kết xuất thành tệp định dạng PDF và nộp qua email (không bắt buộc phải in ấn)  Đúng hạn nộp báo cáo bài tập lớn. 5. Tài liệu tham khảo - Bài giảng Lâ ̣p trình Windows với C# .NET, Khoa CNTT, ĐHHH VN - Vietjack, Howkteam,… 1 số nguồn khác. Hải Phòng, tháng 04 năm 2018 NGƯỜI HƯỚNG DẪN Mục lục GIỚI THIỆU.....................................................................................................i CHƯƠNG 1. CƠ SỞ LÝ THUYẾT...............................................................1 Lớp và đối tượng...............................................................................................1 a) Định nghĩa Lớp trong C#......................................................................1 b) Cấu tử, hủy tử.......................................................................................2 c) Static.....................................................................................................2 1.1 Web browser - trình duyệt web là gì?.........................................................3 1.2 Lịch sử về web browser..............................................................................3 1.3 Các mô hình kinh doanh.............................................................................4 1.4 Chức năng...................................................................................................5 1.5 Tính năng....................................................................................................6 1.6 Giao diện người dùng..................................................................................7 1.7 Bảo mật.......................................................................................................7 1.8 Hỗ trợ tiêu chuẩn.........................................................................................8 CHƯƠNG 2. THIẾT KẾ CHƯƠNG TRÌNH...............................................9 CHƯƠNG 3. CÀI ĐẶT CHƯƠNG TRÌNH...............................................13 KẾT LUẬN....................................................................................................21 TÀI LIỆU THAM KHẢO...............................................................................22 GIỚI THIỆU Ngày nay ứng dụng CNTT và việc tin học hoá được xem là 1 trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức cũng như các công ty , nó đóng vai trò hết sức quan trọng , có thể tạo ra những bước đột phá mạnh mẽ. Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, CNTT cũng được những công nghệ cấp cao chinh phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở thành nền tảng chính cho sự truyền tải, trao đổi thông tin toàn cầu. Là một sinh viên IT – được đào tạo những cơ sở lý luận, được cung cấp những kiến thức từ cơ bản đến phức tạp về về khoa học tự nhiên, kiến thức cơ bản như mạng máy tính, hệ thống thông tin, lập trình, phần mềm… đã giúp em nâng cao trình độ hiểu biết của mình. Xuất phát từ nhận thức trên và dựa trên kiến thức học được, em đã lựa chọn đi sâu nghiên cứu rõ hơn về đề tài : “Xây dựng ứng dụng WebBrowser” Mặc dù đã cố gắng hết khả năng của mình nhưng do trình độ kiến thức và kinh nghiệm còn hạn chế, nên không tránh khỏi có những sơ sót. Em rất mong được sự nhận xét, đánh giá, đóng góp ý kiến của thầy để đề tài này được hoàn thiện hơn. i CHƯƠNG 1. CƠ SỞ LÝ THUYẾT Lớp và đối tượng 1. Định nghĩa Lớp trong C# Class trong C# chính là cách thể hiện khái niệm về lớp trong lập trình hướng đối tượng. Một Class trong C# có các thành phần như:  Thuộc tính: là các thành phần dữ liệu hay còn gọi là các biến. Phương thức: là các hàm thành phần thể hiện các hành vi của một đối tượng thuộc lớp.  Phương thức khởi tạo.  Phương thức huỷ bỏ.  Khai báo: Cú pháp class  {              ; } Trong đó:      là tên do người dùng đặt và tuân theo quy tắc đặt tên đã trình bày trong bài Biến trong C#. Bao gồm các từ khóa như public, protected, private, static,..   bao gồm các biến, phương thức của lớp. o Các biến được khai báo như khai báo biến đã học trong bài Biến trong C#. o Các phương thức (hàm) được khai báo như khai báo hàm đã học trong bài Hàm trong C#. 1 2. Cấu tử, hủy tử - Cấu tử là 1 phương thức đặc biệt của lớp dùng để khởi tạo giá trị ban đầu cho các thành phần của các đối tượng của lớp. Nó có đặc điểm  Luôn tồn tại trong lớp  Có tên trùng với tên lớp  Không có kiểu trả về  Có thể có hoặc không có tham số  Cấu tử tự động được gọi khi 1 đối tượng được khai báo hoặc được cấp phát bộ nhớ - Hủy tử: là 1 phương thức đặc biệt của lớp dùng để “dọn dẹp” chương trình: xóa vùng nhớ đệm, thu hồi tài nguyên đã cấp phát cho đối tượng. Hủy tử có đặc điểm  Có tên trùng với tên lớp, có dấu ~ ở phía trước  Không có kiểu trả về  Không có tham số  Hủy tử tự động được gọi khi 1 đối tượng kết thức vòng đời 3. Static - Từ khóa Static được dùng để khai báo biến static hoặc static method hoặc static class. - Biến Static có vùng nhớ riêng không bị thay đổi, nó không thuộc về 1 đối tượng nào hết mà thuộc về class chứa nó. - Static method là hàm trong class mà khi gọi nó ta không cần phải khai báo 1 kiểu class đó mà có thể gọi ngay, nó tương đường với 1 hàm có thể gọi mà không cần đối tượng nào hết. 2 - Class static là class chỉ có thể có static method. Khi khai báo static cho class thì yêu cầu tất cả các biến, hàm trong class cũng phải là static, thường dùng cho việc lưu thông tin chung cho toàn bộ ứng dụng. 3 1.1 Web browser - trình duyệt web là gì? Một web browser là một phần mềm ứng dụng để truy xuất, trình diễn và chuyển các nguồn thông tin (information resource) trên mạng hệ thống mạng toàn cầu (World Wide Web). Một nguồn thông tin được nhận dạng bởi một Uniform Resource Identifier (URI) và có thể là một trang web, phim - video, hình ảnh (images) hoặc các mẫu thông tin khác. Mặc dù các trình duyệt với mục đích là để truy cập vào hệ thống mạng toàn cầu, các trình duyệt còn được sử dụng để truy cập các thông tin được cung cấp bởi các web servers (máy chủ web) trong hệ thống mạng riêng hoặc các tài liệu (files) đến các hệ thống file (file system). Hoặc cũng được dùng để tiết kiệm tài nguyên thông tin cho các hệ thống lưu trữ file. 1.2 Lịch sử về web browser Lịch sử của các trình duyệt Web bắt đầu vào cuối thập niên 1980, khi một loạt các công nghệ đặt nền móng cho các trình duyệt Web đầu tiên, WorldWideWeb, do Tim Berners-Lee vào năm 1991. Sự phát triển này dựa trên các công nghệ phần mềm và phần cứng hiện có, ngoài ra cũng mở ra nhiều công nghệ mới bắt đầu tư đây. Ted Nelson và Douglas Engelbart phát triển khái niệm siêu văn bản trước khi Berners-Lee và CERN khá lâu. Web browser đã trở thành cốt lõi của World Wide Web. Berners-Lee thừa nhận sự đóng góp của Engelbart. Việc giới thiệu trình duyệt Mosaic NCSA Web vào năm 1993 - một trong những trình duyệt web với giao diện đồ họa đầu tiên - đã dẫn tới sự bùng nổ trong việc dùng web. Marc Andreessen, người lãnh đạo của đội Mosaic tại NCSA, sớm bắt đầu công ty riêng của mình, đặt tên là Netscape, và phát hành các phiên bản Mosaic Netscape Navigator vào năm 1994, và sau đó nhanh chóng trở thành trình duyệt phổ biến nhất thế giới, chiếm 90% của tất cả các sử dụng Web đỉnh cao của nó. Microsoft đã đáp trả bằng trình duyệt Internet Explorer của mình trong năm 1995 (cũng bị ảnh hưởng nhiều từ Mosaic), và đầu cuộc chiến trình duyệt đầu tiên. Bằng việc kết hợp Internet Explorer với Windows, Microsoft đã có thể tận dụng ưu thế của nó trong thị trường hệ điều hành để quản lý thị trường trình duyệt Web; Internet Explorer sử dụng đạt vị trí trên 95% người dùng 4 vào năm 2002. Internet Explorer chiếm 60% người sử dụng trình duyệt vào Tháng Tư năm 2010 theo thống kê của Net Applications. Opera đầu tiên xuất hiện vào năm 1996; mặc dù nó đã không bao giờ đạt được sử dụng rộng rãi, chiếm 2% thị phần trình duyệt vào tháng tư năm 2010, tuy nhiên Opera chiếm một phần đáng kể của thị trường đang phát triển nhanh là trình duyệt Web điện thoại di động, Oepra được cài đặt sẵn trên trên 40.000.000 điện thoại. Opera cũng có sẵn trên một số hệ thống nhúng khác, bao gồm video game console Wii của Nintendo. Năm 1998, Netscape triển khai Mozilla Foundation trong một nỗ lực để sản xuất một trình duyệt cạnh tranh bằng cách sử dụng mô hình phần mềm mã nguồn mở. Đó là trình duyệt sau nay phát triển thành Firefox, sau đó thì trình duyệt này được phát triển khá tốt trong khi vẫn còn trong giai đoạn beta, ngay sau khi phát hành Firefox 1.0 vào cuối năm 2004, Firefox (mọi phiên bản) đã chiếm 7,4% thị phần sử dụng trình duyệt. Và đến tháng tư năm 2010, Firefox đã có một thị phần 25%. Safari của Apple đã phát hành phiên bản beta đầu tiên vào tháng một năm 2003; vào tháng 10 năm 2009, đã chi phối thị phần của trình duyệt web dựa trên việc phát triển từ các ứng dụng của Apple, chiếm dưới 5% thị trường trình duyệt toàn bộ vào tháng 4 năm 2010. Nó được xem như là công cụ cho web (còn được gọi là WebKit) để trình diễn các tính năng và là nền tảng được ứng dụng nhiều trên thiết bị di động, bao gồm cả hệ điều hành iPhone, Google Android, Nokia S60 và Palm WebOS. Vào tháng 9 năm 2008, Google bắt đầu nhảy vào cuộc chiến các trình duyệt bằng trình duyệt web Google Chrome. Đến tháng 4 năm 2010, Google Chrome đã chiếm 7% thị phần. 1. Các mô hình kinh doanh Các cách mà các nhà sản xuất trình duyệt web tài trợ cho chi phí phát triển của họ đã thay đổi theo thời gian. Trình duyệt web đầu tiên, WorldWideWeb, là một dự án nghiên cứu. Ngoài việc là phần mềm miễn phí , Netscape Navigator và Opera cũng được bán thương mại. Mặt khác, Internet Explorer được đóng gói miễn phí với hệ điều hành Windows (và cũng có thể tải xuống miễn phí), và do đó nó được tài trợ một phần bởi doanh thu của Windows cho các nhà sản xuất máy tính và trực tiếp tới người dùng. Internet Explorer cũng đã có sẵn cho máy Mac. Có vẻ như việc phát hành IE cho Mac là một phần của chiến lược tổng thể của Microsoft 5 nhằm chống lại các mối đe dọa đối với sự thống trị của nền tảng độc quyền như các tiêu chuẩn web và Java bằng cách làm cho một số nhà phát triển web hoặc ít nhất là các nhà quản lý của họ cho rằng có "không cần" để phát triển cho bất cứ điều gì khác ngoài Internet Explorer. Về khía cạnh này, IE có thể đã góp phần làm cho Windows và các ứng dụng của Microsoft bán hàng theo cách khác, thông qua việc "khóa vào" trình duyệt của Microsoft. Vào tháng 1 năm 2009, Ủy ban châu Âu thông báo họ sẽ điều tra việc tích hợp Internet Explorer với hệ điều hành Windows của Microsoft, nói rằng việc buộc Microsoft Internet Explorer vào hệ điều hành Windows làm hại đến sự cạnh tranh giữa các trình duyệt web, làm suy yếu sự đổi mới sản phẩm và cuối cùng là giảm sự lựa chọn của người tiêu dùng. Safari và Mobile Safari tương tự như vậy luôn được bao gồm với MacOS và iOS tương ứng, do đó, tương tự như vậy, ban đầu chúng được tài trợ bởi doanh số bán máy tính Apple và thiết bị di động và tạo thành một phần trải nghiệm tổng thể của Apple cho khách hàng. Một số trình duyệt web thương mại được trả bởi các công ty công cụ tìm kiếm để làm cho mặc định của động cơ của họ, hoặc để bao gồm chúng như một tùy chọn khác. Ví dụ: Yahoo! trả tiền cho Mozilla , nhà sản xuất Firefox, để làm cho Yahoo! Tìm kiếm công cụ tìm kiếm mặc định trong Firefox. Mozilla kiếm đủ tiền từ thỏa thuận này mà không cần phải tính phí người dùng cho Firefox. Với quyền sở hữu chung, Microsoft Edge , Internet Explorer và Google Chrome mặc định là công cụ tìm kiếm của Bing và Google Tìm kiếm, và có thể tích hợp với các nền tảng khác được cung cấp bởi nhà cung cấp. Điều này khuyến khích việc sử dụng các dịch vụ của bên thứ nhất, từ đó cho phép người dùng quảng cáo có thể được sử dụng làm nguồn thu nhập. Nhiều trình duyệt phần mềm miễn phí nổi tiếng như Konqueror hầu như không được tài trợ và hầu hết là do tình nguyện viên phát triển. 2. Chức năng Mục đích chính của một trình duyệt web là để mang lại nguồn thông tin cho người dùng. Quá trình này bắt đầu khi một người sử dụng nhập vào (URI) hay tạm gọi là một đường dẫn, Ví dụ như http://www.khoahocviet.org/. Các tiền tố của URI sẽ xác định cho phương thức truy cập và dữ liệu nhận được sẽ được biên dịch như thế nào. Các loại URI thông dụng nhất bắt đầu với http: định một nguồn tài nguyên để được lấy dựa trên Hypertext Transfer Protocol (HTTP) (tôi tạm gọi là giao thức truyền dữ liệu cho các siêu văn bản). Nhiều trình duyệt cũng hỗ trợ một loạt các tiền tố khác, chẳng hạn như https: (cũng tương tự như HTTP nhưng dữ liệu được mã hóa và bảo mật hơn) hay ftp: cho 6 File Transfer Protocol (giao thức truyền tải file), và file: cho các tập tin lưu trữ nội bộ. Các trình duyệt web có thể không trực tiếp xử lý mà thường chuyển qua các úng dụng khác xử lý. Ví dụ, mailto: URI thường sẽ được chuyển qua chương trình ứng dụng mail mặc định mà người dùng đang sử dụng, hoặc news: sẽ gọi đến các chương trình đọc tin tức. Tuy nhiên trình duyệt cũng có cơ chế mở và được hỗ trợ bởi các plugins của nó để có thể hiển thị được các loại tài liệu trực tiếp trên web browser. Hầu hết các trình duyệt có thể hiển thị hình ảnh, âm thanh, video, và các tập tin XML, và thường có một số plug-in mặc định để hỗ trợ các ứng dụng Flash và Java applet. Khi gặp phải một tập tin không được hỗ trợ thì tập tin này sẽ được tải về thay vì hiển thị trực tiếp trên web, lúc này trình duyệt sẽ nhắc người dùng để lưu tập tin vào đĩa. Tính tương tác trong một trang web có thể được ứng dụng bởi javascript mà thường không đòi hỏi sự hỗ trợ thêm của plugin. javascript có thể được sử dụng cùng với các công nghệ khác để cho phép tương tác trực tiếp với máy chủ trang web, ví dụ: tương tác thông qua AJAX. Các thông tin trên trang web có thể chứa siêu liên kết (hyperlinks) tới các nguồn thông tin khác. Mỗi liên kết có chứa các URI để đi đến các nguồn thông tin khác. Khi một liên kết được nhấp, trình duyệt điều hướng người dùng tới trang thông tin khác. 3. Tính năng Các trình duyệt web có sẵn bao gồm các tính năng từ giao diện người dùng tối thiểu, dựa trên văn bản với hỗ trợ xương sống cho các giao diện người dùng HTML phong phú hỗ trợ nhiều định dạng và giao thức. Các trình duyệt bao gồm các thành phần bổ sung để hỗ trợ e-mail, tin tức Usenet , và Internet Relay Chat (IRC), đôi khi được gọi là " bộ ứng dụng Internet " thay vì chỉ là "trình duyệt web". Tất cả các trình duyệt web chính cho phép người dùng mở nhiều tài nguyên thông tin cùng lúc, hoặc trong các cửa sổ trình duyệt khác nhau hoặc trong các tab khác nhau của cùng một cửa sổ. Các trình duyệt chính cũng bao gồm các trình chặn cửa sổ bật lên để ngăn các cửa sổ không mong muốn xuất hiện khi không có sự đồng ý của người dùng. Hầu hết các trình duyệt web đều có thể hiển thị danh sách các trang web mà người dùng đã đánh dấu để người dùng có thể nhanh chóng quay lại với họ. Dấu trang cũng được gọi là "Mục ưa thích" trong Internet Explorer . Ngoài ra, tất cả các trình duyệt web lớn đều có một số trình kết hợp nguồn cấp dữ liệu web được xây dựng sẵn . Trong Firefox , nguồn cấp dữ 7 liệu web được định dạng là "dấu trang trực tiếp" và hoạt động giống như một thư mục các dấu trang tương ứng với các mục gần đây trong nguồn cấp dữ liệu. Trong Opera , một feed reader truyền thống hơn được bao gồm trong đó các cửa hàng và hiển thị các nội dung của thức ăn chăn nuôi. Hơn nữa, hầu hết các trình duyệt có thể được mở rộng qua các trình cắm thêm , các thành phần có thể tải xuống cung cấp các tính năng bổ sung. 4. Giao diện người dùng Hầu hết các trình duyệt web lớn có những yếu tố giao diện người dùng chung:   Nút quay lại và chuyển tiếp để quay lại tài nguyên trước và tương ứng.  Một refresh hoặc reload nút để tải lại tài nguyên hiện hành.  Một stop nút để hủy bỏ tải các tài nguyên. Trong một số trình duyệt, nút dừng được hợp nhất với nút tải lại.  Một nhà nút để trở về của người sử dụng trang chủ .  Một thanh địa chỉ để nhập vào Uniform Resource Identifier (URI) của tài nguyên mong muốn và hiển thị nó.  Thanh tìm kiếm nhập từ vào một công cụ tìm kiếm web . Trong một số trình duyệt, thanh tìm kiếm được hợp nhất với thanh địa chỉ.  Một thanh trạng thái để hiển thị tiến bộ trong việc tải các tài nguyên và cũng là URI của liên kết khi con trỏ dao động lên chúng, và trang zoom khả năng.  Chế độ xem , khu vực hiển thị của trang web trong cửa sổ trình duyệt.  Khả năng xem mã nguồn HTML của một trang.  Các trình duyệt chính cũng có các tính năng tìm kiếm gia tăng để tìm kiếm trong một trang web. 5. Bảo mật Hầu hết các trình duyệt đều hỗ trợ HTTP Secure và cung cấp các cách nhanh chóng và dễ dàng để xóa thông tin nhận dạng cá nhân như bộ nhớ cache web, 8 lịch sử tải xuống, biểu mẫu và lịch sử tìm kiếm, cookie và lịch sử duyệt web. Để so sánh các lỗ hổng bảo mật hiện tại của trình duyệt. 6. Hỗ trợ tiêu chuẩn  Các trình duyệt web sớm chỉ hỗ trợ một phiên bản HTML rất đơn giản. Sự phát triển nhanh chóng của các trình duyệt web độc quyền đã dẫn tới sự phát triển các phương tiện không chuẩn của HTML, dẫn đến các vấn đề về khả năng tương tác. Các trình duyệt web hiện đại hỗ trợ sự kết hợp của các tiêu chuẩn và dựa trên HTML và XHTML trên thực tế . Các trình duyệt này phải được render cùng một cách. 9 CHƯƠNG 2. THIẾT KẾ CHƯƠNG TRÌNH Bước 1: Mở VS và tạo một dự án mới Bước 2: Chọn ứng dụng Windows Forms và sau đó Đặt tên ứng dụng của bạn 10 Bước 3: Thêm một số công cụ trong biểu mẫu của bạn Bước 4: Mã cho Quay lại / Chuyển tiếp / Trang chủ / Làm mới .. Bước 5: Mã cho Nút GO / Tìm kiếm 11 Bước 6 : Thêm Tab tìm kiếm Bước 7 : Xoá Tab hiện tại 12 Bước 9 : Kiểm tra ứng dụng 13 CHƯƠNG 3. CÀI ĐẶT CHƯƠNG TRÌNH using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; namespace Webbrowser__BTL { public partial class Browser : Form { public Browser() { InitializeComponent(); } int i = 0; // biến lưu thứ tự tab int soTrang = 0; // phục vụ cho đánh dấu trang Class_DanhDau[] danhDauTrang = new Class_DanhDau[100]; ListBox listBoxLichSu = new ListBox(); // danh sách lưu lịch sử ListBox listBoxMarked = new ListBox(); // danh sách lưu đánh dấu trang string ulrTamThoi = ""; private void toolStripButton1_Click(object sender, EventArgs e) { webBrowser1.GoBack(); } private void toolStripButton6_Click(object sender, EventArgs e) { webBrowser1.Navigate(toolStripTextBox1.Text); } 14 private void toolStripButton2_Click(object sender, EventArgs e) { webBrowser1.GoForward(); } private void toolStripButton5_Click(object sender, EventArgs e) { webBrowser1.GoHome(); } private void toolStripButton4_Click(object sender, EventArgs e) { webBrowser1.Refresh(); } private void toolStripButton3_Click(object sender, EventArgs e) { webBrowser1.Stop(); } private void toolStripTextBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { string lines = toolStripTextBox1.Text; listBoxLichSu.Items.Add(DateTime.Now.ToString() + "\t" + toolStripTextBox1.Text); webBrowser1 = new WebBrowser(); tabControl1.Dock = DockStyle.Fill; webBrowser1.Size = tabControl1.Size; webBrowser1.ScriptErrorsSuppressed = true; webBrowser1.Dock = DockStyle.Fill; webBrowser1.Visible = true; 15
- Xem thêm -

Tài liệu liên quan