Web浏览器程序报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络编成课程设计
院系:计算机科学与信息工程学院
专业: 09网络工程一班
小组成员:闫玲,肖梦,魏丹霞,
陈盼盼,孙小军
指导老师: 王占中
日期:2012年5月28日
目录
一.项目背景 (1)
二.目的、意义和研究现状分析 (1)
2.1.目的和意义 (1)
2.2. 研究现状分析 (1)
三.主要解决的问题 (1)
四.小组成员及分工情况 (2)
五.主要开发环境与工具、技术路线和解决方案 (2)
5.1主要开发环境与工具 (2)
5.2技术路线和解决方案 (2)
六.系统分析与设计 (3)
6.1.界面设计 (3)
七.调试与测试 (4)
7.1测试目的 (4)
7.2软件测试的内容 (4)
7.3 测试结果 (5)
八.系统现状分析与总结(包括组长对整个小组评价及成员评价) 5
8.1.现状分析: (5)
8.2.总结: (5)
一.项目背景
随着时代的发展,计算机已经不是前些年仅仅是少数人才可以运用/使用的局面,取而代之的是许许多多的家庭有了计算机。
计算机的普遍也带动了网络的不断发展,网页浏览器作为上网的所必需的软件之一,已经得到了广泛地应用。
在IE独霸一方的背景下,国内外各式各样的浏览器软件都如雨后春笋般孕育而生。
网页浏览器的开发与应用更是成为了计算机领域近年来的一大热点。
本文围绕着浏览器的编程与开发,讲述了在Visual c++中进行浏览器开发的一些技术和笔者的自己的心得,着重讲解了课程设计中所实现的一个Web浏览器程序。
二.目的、意义和研究现状分析
2.1.目的和意义
随着互联网在世界范围的广泛应用,网络浏览器便是信息交流中必不可少的工具。
本题目要求同学在熟练掌握vc++下有关网络编程理论的基础上,实现一个能够浏览网页的浏览器。
希望通过制作简易Web浏览器来掌握vc++有关内容的使用方法。
2.2. 研究现状分析
在IE独霸一方的背景下,国内外各式各样的浏览器软件都如雨后春笋般孕育而生。
网页浏览器的开发与应用更是成为了计算机领域近年来的一大热点。
国内外的各种浏览器都大同小异,但其功能有时过于复杂,很多功能并非为用户所常用。
很多商业浏览器上广告太多,往往影响了用户的正常使用,故本次课程设计做一个简单实用的浏览器。
三.主要解决的问题
设计一个Web浏览器,其主要功能是浏览网页。
浏览网页的同时,用户需要知道自己的浏览记
录,及保存自己喜欢的网站,以便日后的再次浏览。
故本设计的主要解决的问题有:
1.用户能够对当前网页进行保存、设置、打印等操作
2.用户能够能够进行主页设置
4.能够进行前进后退刷新等操作
5.浏览器能够分页浏览
四.小组成员及分工情况
本次课程设计成员有:闫玲,肖梦,魏丹霞,陈盼盼,孙小军
本WEB浏览器为简单的分页浏览器,其主界面中有:前进后退地址栏停止刷新新建,主页等(地址栏保存最近访问的 10 条记录)
菜单栏功能:
文件(新建,打开,保存,另存为,打印,打印设置,最近文件,退出)
查看(前进,后退,停止,刷新,主页,搜索)
帮助(关于MyBrowser)
分工情况:
魏丹霞:主要负责文件(新建打开保存,另存为,打印,打印设置,最近文件,退出);闫玲:主要负责查看(前进,后退,停止,刷新,主页,搜索);
肖梦:主要负责帮助(关于MyBrowser )
陈盼盼,孙小军:主要负责其他部分
五.主要开发环境与工具、技术路线和解决方案
5.1主要开发环境与工具
软件应工作在Windows系统上,建议使用Windows2000操作系统的计算机,另外配备Access2000数据库和Visual c++。
5.2技术路线和解决方案
设计一个IE浏览器,其主要功能是浏览网页。
为了实现浏览网页的功能,我添加一个控件:MyBrowser。
这个控件的Navigate方法可以打开指定的网页,从而实现了浏览网页的目的。
在工具栏添加一个ToolStripComboBox1作地址栏,定义它的Click事件和KeyPress事件,开始搜网。
我直接用ToolStripComboBox1.AddItem ( string ),来保存网址。
输入的网址会放到数据库中同时判断该网址是否已存在等问题,存放网址的数据库更新之后会把表中的网址添加到
ToolStripComboBox1中。
接下来我就开始设计菜单的功能,对于“文件”菜单,其中“新建”和“关闭”菜单就利用窗体的相关方法就可实现。
“另存为”“打印”“打印设置”“最近文件”“退出”可以通过MyBrowser控件中的相关方法实现。
比较麻烦的是“打开”菜单项,我添加了一个窗体作为“打开”对话框,然后编写相应的程序。
对于“查看”菜单的各项功能,可以调用MyBrowser控件的ExecCommand方法,实现相应功能。
对于“查看”菜单的各项功能,MyBrowser也有相应的方法实现其功能。
tabcontrol控件里面添加webbrowser控件用于分页浏览,webbrowser控件中的NewWindow 事件是进行分页浏览的关键。
状态栏中主要显示当前网页的状态(通过StatusTextChanged事件来获得),当前时间,当前网页的进度(通过ProgressChanged事件获得)
六.系统分析与设计
6.1.界面设计
Form1(主界面)
该界面主要用于对当前网页及浏览器进行一些操作。
Form2(打开界面)
该界面是用户点击菜单:文件—打开时产生的,用户可以在其textbox中输入网址,也可通过点击浏览来查看自己电脑中的网址
Form3(主页设置界面)
在该界面下的textbox中输入你想要设定的主页的网址,可以修改主页,是通过修改注册表来实现的。
Form4(关于界面)
该界面显示的是关于本系统的开发的一些信息。
七.调试与测试
7.1测试目的
软件测试是软件代码生成后必不可少的一步,软件测试包括功能代码的测试、系统功能的完整性测试、性能测试、安全性测试、数据库的一致性测试等,测试的目的是尽可能多的发现软件制作过程中的错误,通过测试使软件的错误减少,使系统的可靠性进一步提高。
7.2软件测试的内容
(1)根据需求分析划定系统测试的功能范围,即用户需要的功能是否已经在系统中得到充分体现。
(2)分模块测试软件的功能,包括软件的界面要求、功能体现、性能要求、稳定性要求、是否达到操作便捷、灵活性要求、安全性要求;各模块之间的关系是否与需求分析中的一致等
(3)整体测试,在分块测试之后,将所有模块作为一个整体进行测试,测试整个系统的功能和性能,
检验其是否满足用户的需求。
7.3 测试结果
测试中出现了一些细节方面的问题,例如数据库方面,一些特殊的网址链接无法打开等。
但经过修改大部分已改正确。
八.系统现状分析与总结(包括组长对整个小组评价及成员评价)
8.1.现状分析:
本Web浏览器基本已达到了我们开发此浏览器的初衷,系统各方面的性能基本稳定,但由于时间关系及技术发面的原因,该系统仍然存在一些问题,如
用WebBrowser.StatusText无法捕获的url(例如StatusText 为"javascript:void(0)"),目前无法解决这个问题。
8.2.总结:
经过两周的奋斗,在各位组员的合作下,我们终于制作出了自己的系统,并达到了预期的效果。
本次开发的Web浏览器对我们来说是一个比较新的知识点,平时上课时接触的比较少,故在这方面我们阅读了大量的书籍资料,在网上也查找了相关的文章。
通过自学,大家也学到了不少知识,收获颇丰。
同时我们也体会到了自学的快乐。
当然一些技术方面的问题我们还询问了老师,在此,我代表我们组向老师致谢。
组员李想平时比较认真,在数据库那方面下了工夫,从而才能按时完成与收藏夹相关的内容。
在最后测试阶段,李想也比较积极,勇于发现系统存在的问题,并协助组长进行修改。
总之,经过本次的课程设计,我们组的成员都学到了很多东西,对也产生了更加浓厚的兴趣。