中北大学浏览器程序设计说明书.docx
《中北大学浏览器程序设计说明书.docx》由会员分享,可在线阅读,更多相关《中北大学浏览器程序设计说明书.docx(10页珍藏版)》请在冰豆网上搜索。
![中北大学浏览器程序设计说明书.docx](https://file1.bdocx.com/fileroot1/2023-2/21/4b1bcab3-2ede-4534-a1b0-a45bbb13ac37/4b1bcab3-2ede-4534-a1b0-a45bbb13ac371.gif)
中北大学浏览器程序设计说明书
中北大学
课程设计说明书
学生姓名:
学号:
学院:
信息与通信工程学院
专业:
电子信息科学与技术
题目:
程序设计实践:
浏览器程序设计
指导教师:
程耀瑜、李化欣职称:
教授、讲师
2013年1月11日
中北大学
课程设计任务书
12/13学年第一学期
学院:
信息与通信工程学院
专业:
电子信息科学与技术
学生姓名:
学号:
题目:
程序设计实践:
浏览器程序设计
起迄日期:
2012年12月24日~2013年1月11日
课程设计地点:
主楼1416
指导教师:
程耀瑜李化欣
系主任:
程耀瑜
下达任务书日期:
2012年12月24日
课程设计任务书
1.设计目的:
通过设计,明确浏览器程序的设计思想和设计过程,扎实掌握VC、C++或C语言编程的整体框架和步骤,使学生具有一定综合分析问题和解决问题的能力
2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等):
功能说明:
通过设置URL地址的对话框窗口,确定游览目标,并能较好地完成网上冲浪的任务。
设计要求:
课程设计的目的在于培养学生的综合素质,要求学生做到:
(1)根据题目要求查阅有关资料,确定方案,写出设计方案;
(2)根据对选题的理解,消化查阅资料,给出相关设计的流程图;
(3)在C语言、C++或VC环境下,实现各项功能;
(4)对结果进行分析总结。
3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、实物样品等〕:
设计工作任务:
(1)了解课题背景,掌握基本技术,制定程序设计框架。
(2)完成设计内容:
包括程序流程图和完成实现功能的程序代码,写出设计说明书。
(3)设计答辩。
工作量的要求:
(1)通过查阅资料了解与浏览器程序相关的知识,理解选题意义;
(2)掌握与浏览器程序相关的设计思想、原理、设计框架和步骤;
(3)完成浏览器程序的功能和程序代码的实现;
(4)通过实验验证程序代码的可行性;
(5)给出设计总结。
课程设计任务书
4.主要参考文献:
[1]严华峰等.VisualC++课程设计案例精编(第一版).北京:
中国水利水电出版社
[2]郑莉,董渊,何江舟.C++语言程序设计(第四版).北京:
清华大学出版社
[3]韦朴,陈泰生.VisualC++通用范例开发金典.北京:
电子工业出版社
5.设计成果形式及要求:
程序运行结果;
课程设计说明书。
6.工作计划及进度:
2012年12月24日~2012年12月28日:
查资料
2012年12月29日~2013年1月3日:
在指导教师指导下设计方案及程序
2013年1月4日~2013年1月8日:
学生上机调试程序,指导教师辅导
2013年1月9日~2013年1月11日:
完成课程设计说明书
2013年1月11日:
答辩
系主任审查意见:
签字:
年月日
目录
摘要6
设计目的、意义6
设计内容7
结果分析10
设计心得11
参考文献11
摘要
本设计可以帮助学生掌握和应用所学的VC++以及C语言的知识来设计浏览器程序,培养同学们建立类及对象模型,处理类与类、对象与对象之间的关机以及对程序编程的能力,训练同学为解决实际问题而创建完整的面向对象和应用程序编程的能力。
本设计是一个常见的网页浏览器应用程序。
本浏览器实现的功能:
打开相关的常用网页;网页的前进、后退、导航、刷新等简单功能。
关键字:
VC++、C语言、网页浏览器、前进、后退、刷新、停止、返回主页、运行程序
设计目的、意义
通过两周的查找资料,讨论学习做出程序学会综合应用专业所学习的多门课程知识,并把本学期所学的网络编程的知识运用到实际编程中,熟练编程规范,训练编程思维,为学生适应毕业后团队合作开发规模稍大项目打下基础。
设计内容
1.利用MFCAppWizard生成应用程序框架
工程名为E06。
第一步,选择工程类型为单文档(SDI),中文语言支持。
第二步和第三步使用默认值,不需要数据库,也不提供对于复合对象的支持;第四步不选中“隐藏工具栏”和“打印和打印预览”选择“WindowsSockets”;第五步不做任何修改;第六步选择CHtmlView类作为视图类的基类。
生成工程框架包含4个类。
(1)应用程序类:
CE06App,对应E06.h和E06.cpp文件。
(2)框架类:
CMainFrame,对应MainFrm.h和MainFrm.cpp文件。
(3)文档类:
CE06Doc,对应E06Doc.h和E06Doc.cpp文件。
(4)HtmlView类:
CE06View,对应E06View.h和E06View.cpp文件。
此时编译运行,程序已经具有基本的Web浏览功能,能自动链接到微软公司的网站。
2.修改菜单
在工作区中选择“ResourceView”选项卡,选择Menu,双击菜单控件的名字(IDR_MAINFRAME),右边出现程序的菜单。
选择菜单中的“查看”命令,已经有了“工具栏”和“状态栏”两个条目,双击下面的空框,弹出设置菜单条目属性对话框,如图1.1所示,按照表1.2添加6个菜单条目
菜单条目名称(Caption)
ID号
导航
ID_FILE_NAVIGATE
前进
ID_FILE_FOWARD
后退
ID_FILE_BACK
返回主页
ID_FILE_HOME
停止
ID_FILE_STOP
刷新
ID_FILE_REFRESH
图1.2
3.修改工具栏
在工具栏上增加新的按钮,以便快速执行所需的功能。
在工作区中选择“ReaourcecView”选项卡,选择ToolBar,双击工具条控件的名字(IDB_BITMAP1),右边出现程序的工具条。
双击其中的按钮,可以看到他们的属性,如图1.3所示。
利用右边的图形绘制工具,可以自己设计新的按钮图样。
如图1.4所示
如图添加7个按钮,他们的ID号与相应的菜单条目相同。
拖动按钮,可以改变按钮之间的相对位置。
4.为控件添加时间处理函数
当用户单击菜单条目,或者单击相应的快捷键时,应能引起程序的反映,这就需要给这些控件添加时间处理函数。
进入类向导,选择“MessageMaps”选项卡。
在“ClassName”下拉列表框中选择CE06View类,然后按照表1.5为前述的六个控件添加事件处理函数。
对象ID
Messages
MemberFunction
ID_FILE_NAVIGATE
COMMAND
OnFileNavigate()
ID_FILE_FOWARD
COMMAND
OnFileForward()
ID_FILE_BACK
COMMAND
OnFileBack()
ID_FILE_HOME
COMMAND
OnFileHone()
ID_FILE_STOP
COMMAND
OnFileStop()
ID_FILE_REFRESH
COMMAND
OnFileRefresh()
图1.5
5.添加事件处理函数的代码
在E06View.cpp实现文件中,添加上述6个时间处理函数的代码。
voidCE06View:
:
OnFileNavigate()
{CaddressDlgdlg;
if(dlg.DoModal()!
=IDOK)return;
Navigate(dlg.m_address);}//输入网址
voidCE06View:
:
OnFileForward(){GoForward();}//前进到下一个网页
voidCE06View:
:
OnFileBack(){GoBack();}//退到下一个网页
voidCE06View:
:
OnFileHone(){GoHome();}//回到主页
voidCE06View:
:
OnFileStop(){Stop();}//停止网页的下载
voidCE06View:
:
OnFileRefresh(){Refresh();}//刷新当前的网页
6.将工具栏加入菜单栏窗口
在MainFrame.h中创建对象public:
CToolBarm_wndToolBar;然后在MainFrame.cpp中OnCreate()中加入if(!
m_wndToolBar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_GRIPPER|CBRS_TOOLTIPS|CBRS_FLYBY|CBRS_SIZE_DYNAMIC)||!
m_wndToolBar.LoadToolBar(IDB_BITMAP1))
{TRACE0("未能创建工具栏\n");return-1;}
此时可以再进行编译运行。
结果分析
运行证明该文件能能实现浏览器功能,工具栏也能正常使用。
设计心得
VisualC++为我们提供了一个Chtmlview类,有了它,将会很方便地设计出比IE更好的浏览器来。
从中我们巩固了C和C++知识,也学会了团队合作为以后规范编程,团队合作开发打下了基础。
参考文献
严华峰等.VisualC++课程设计案例精编(第一版).北京:
中国水利水电出版社
郑莉,董渊,何江舟.C++语言程序设计(第四版).北京:
清华大学出版社
韦朴,陈泰生.VisualC++通用范例开发金典.北京:
电子工业出版社