12CMFC课程设计之浏览器.docx

上传人:b****6 文档编号:6507426 上传时间:2023-01-07 格式:DOCX 页数:10 大小:378.15KB
下载 相关 举报
12CMFC课程设计之浏览器.docx_第1页
第1页 / 共10页
12CMFC课程设计之浏览器.docx_第2页
第2页 / 共10页
12CMFC课程设计之浏览器.docx_第3页
第3页 / 共10页
12CMFC课程设计之浏览器.docx_第4页
第4页 / 共10页
12CMFC课程设计之浏览器.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

12CMFC课程设计之浏览器.docx

《12CMFC课程设计之浏览器.docx》由会员分享,可在线阅读,更多相关《12CMFC课程设计之浏览器.docx(10页珍藏版)》请在冰豆网上搜索。

12CMFC课程设计之浏览器.docx

12CMFC课程设计之浏览器

大学

C++面向对象课程设计报告

此工程源代码下载地址:

院(系):

计算机工程学院

专业:

学生姓名:

__  

班级:

_____ 学号:

   

题目:

浏览器_________

起迄日期:

_——   

设计地点:

  

指导教师:

 

完成日期:

2011年7月12日

一、课程设计目的

1、学习VC有关网络编程的方法。

2、利用模式对话框实现浏览器外观界面的设计。

3、利用VC下有关ChtmlView类来实现浏览器的有关导航功能。

二、课程设计内容与实现的功能

随着互联网在世界范围的广泛应用,网络浏览器便是信息交流中必不可少的工具。

本题目要求同学在熟练掌握VC下有关网络编程理论的基础上,实现一个能够浏览网页的浏览器,实现基本的网址浏览、后退、前进、刷新、停止等功能。

1、系统分析与设计

1、系统分析

CHtmlView类的主要功能是访问Web网站和HTML文档。

这是由于CHtmlView类在MFC的文档/视图结构(MFC'sdocument/viewarchitecture)环境中,进一步提供了WebBrowser控件的功能,可以说CHtmlView类是对WebBrowser控件的封装。

WebBrowser控件支持通过超链接和统一资源定位器URL导航的Web浏览。

使得应用程序成了一个Web浏览器(webbrowser)。

要创建一个Web浏览器型的应用程序,可以使用CHtmlView类。

通过MFC应用程序向导实现。

CHtmlView类的成员函数

获取和设置属性(Attributes)的成员函数

(1)CStringGetType()const;

(2)longGetLeft()const;

voidSetLeft(longnNewValue);

(3)longGetTop()const;

voidSetTop(longnNewValue);

(4)longGetHeight()const;

voidSetHeight(longnNewValue);

(5)BOOLGetVisible()const;

voidSetVisible(BOOLbNewValue);

其它的函数就不一一列举了。

主要的操作(Operations)成员函数

这些成员函数非常有用,常常用在应用程序中。

voidGoBack();导航到历史列表的前一个条目(previousitem)。

voidGoForward();导航到历史列表的下一个条目。

voidGoHome();导航到主页,该主页在IE的属性中设置。

voidGoSearch();导航到当前搜索页。

该页在IE的属性中设置。

voidRefresh();重新装入浏览器当前正在显示的URL或者文件,即刷新。

voidStop();撤销任何未完成的导航或下载,并且停止任何动态的页面元素,例如背景音乐和动画。

Navigate导航到由URL指定的资源。

Navigate2导航到由URL指定的资源或者由全路径指定的文件。

PutProperty设置与所给定的对象相关的属性的当前值。

GetProperty返回与所给定的对象相关的属性的当前值。

ExecWB执行一个命令。

LoadFromResource在WebBrowser控件中装入一个资源。

2、系统设计:

1.利用MFCAppWizard生成应用程序框架

工程名为MyLastBrowser,第一步,工程类型为单文档(SDI),中文语言支持。

第二步和第三步使用默认值,不需要数据库,也不提供对于复合对象的支持。

第四步选择InternetExplorerReBars工具栏的风格,这样就有了用来输入网址的文本框。

第五步不作任何修改,第六步应选择CHtmlView类作为视图类的基类。

生成的工程框架包含四个类:

应用程序类,CMyLastBrowserApp,对应和文件。

框架类,CMainFrame,对应和文件。

文档类,CMyLastBrowserDoc,对应和文件。

HtmlView类,CMyLastBrowserView,对应和文件。

此时编译运行,程序已经具有了基本的Web浏览功能,能自动连到微软的网站。

2.修改菜单

修改菜单,添加用户需要的功能条目。

在工作区中选择ResourceView卡,选择Menu,双击菜单控件的名字(IDR_MAINFRAME),右边出现程序的菜单。

点击菜单中的“查看”项,已经有了“工具栏”和“状态栏”两个条目,双击下面的空框,弹出设置菜单条目属性对话框。

(如图1-1,表1-1)

图1-1

3.修改工具栏

在工具栏上增加新的按钮,以便快速执行所需的功能。

在工作区中选择ResourceView卡,选择ToolBar,双击工具条控件的名字(IDR_MAINFRAME),右边出现程序的工具条。

双击其中的按钮,可以看到它们的属性。

其中有一个空的按钮,双击它可以添加新的按钮的属性。

本应该添加六个按钮,它们的ID号与相应的菜单条目相同,但是在浏览器界面我隐藏了系统原来的工具栏加上了我自己截取360浏览器的前进后退的图标。

(如图1-2)

图1-2

4.为控件添加事件处理函数

当用户点击菜单条目,或者点击相应的快捷按钮时,应能引起程序的反映,这就需要给这些控件添加事件处理函数。

进入类向导,选择“MessageMaps”卡。

在“ClassName”下拉框中选择CMyLastBrowserView类,为前述的六个控件添加事件处理函数。

图1-3

5.添加事件处理函数的代码

在实现文件中,添加上述六个事件处理函数的代码。

etButtonWidth(20,120);

().SetExtendedStyle(TBSTYLE_EX_DRAWDDARROWS);

(IDB_BITMAP3,34,0,RGB(255,0,255));

().SetHotImageList(&img);

();

(IDB_BITMAP4,34,0,RGB(255,0,255));

().SetImageList(&img);

();

(0,TBSTYLE_FLAT|TBSTYLE_TRANSPARENT);

(NULL,6)

(0,ID_BACK,TBSTYLE_BUTTON,0);

(ID_BACK);

(0,str);

(1,ID_FOWARD,TBSTYLE_BUTTON,1);

(ID_FOWARD);

(1,str);

(2,ID_STOP,TBSTYLE_BUTTON,2);

(ID_STOP);

(2,str);

(3,ID_UPDATE,TBSTYLE_BUTTON,3);

(ID_UPDATE);

(3,str);

(4,ID_HOMEPAGE,TBSTYLE_BUTTON,4);

(ID_HOMEPAGE);

(4,str);

(5,ID_SEARCH,TBSTYLE_BUTTON,5);

(ID_SEARCH);

(5,str);

etBandInfo(0,&rbbi);

=0;

CRectrectAddress;

=RBBIM_CHILDSIZE|RBBIM_IDEALSIZE;

()->GetWindowRect(&rectAddress);

=()+15;

=200;

().SetBandInfo(2,&rbbi);

()|

CBRS_TOOLTIPS|CBRS_FLYBY|CBRS_SIZE_FIXED);

Navigate2(_T(""),NULL,NULL);

}

谢黄维通.VisualC++面向对象与可视化程序设计(第2版).北京:

清华大学出版社,

4.刘路放.VisualC++与面向对象程序设计教程(第二版).北京:

高等教育出版社,

5.潘爱民.COM原理与应用.北京:

清华大学出版社,

九、课程设计评价(由任课教师填写)

课程设计评价

 

成绩:

教师:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1