admin管理员组

文章数量:1532036

2024年6月6日发(作者:)

2022年计算机二级C++实例编程:利用

WebBrowser控件创建自己的浏览器

利用WebBrowser控件创立自己的扫瞄器

是不是很早就想拥有一个很有共性的扫瞄器?本文将介绍如何利用

MicroSoft的

WebBrowser控件在VC中创立一个属于自己的扫瞄器。过程如下:

①新建一个基于对话框的工程,命名为test,然后在对话框上单击

右键,选择Insert ActiveX Control…在弹出的对话框中选择MicroSoft

Web扫瞄器,点击OK。此时对话框上已经消失了WebBrowser控件,调整

它的大小以适合对话框的大小。

②选择WebBrowser控件,点击View/ClassWizard,选择Member

Variables,单击Add Variable按钮,此时会弹出两个对话框,均点击确

定即可。然后给该控件参加一个变量,我们把它命名为m_ctrlWeb。

③在ClassWizard中选择OnInitDialog()函数,在里面参加如下代

码:

m_te(

“,NULL,NULL,NULL,NULL);

第一个参数即你要扫瞄的URL地址,可以是一个文件,也可以是一个

地址(如)。

“d:temphtml_

现在编译运行改程序,如何,是不是已经看到你想要扫瞄的网页了!

不过,我们现在的扫瞄器只能显示,还没有最根本的前进、后退、刷新等

功能,下面我们来参加这些

功能。

④在对话框上参加三个按钮,分别命名为前进(IDC_BUTTON_FORWARD)、

后退(IDC_BUTTON_BACK)、刷新(IDC_BUTTON_REFRESH),然后我们分别为

他们参加掌握代码。首先要掌握他们在特定的状况下是否可用,即到达最

顶层或最底层时,前进或后退按钮要相应的转变他们的状态。利用

ClassWizard给WebBrowser控件参加CommandStateChange大事,然后单

击Edit Code按钮,在其中参加如下代码:

switch(Command)

{

case 1:

{

GetDlgItem(IDC_BUTTON_FORWARD)->EnableWindow(Enable);

break;

}

case 2:

{

GetDlgItem(IDC_BUTTON_BACK)->EnableWindow(Enable);

break;

}

}

此时,按钮已经可以随着你点击超连接而转变他们的状态了。下面要

参加掌握前进后退的代码以使这些按钮起作用。

⑤分别给前进和后退按钮的函数参加如下代码:

前进:m_ctrlWeb. GoForward();

后退:m_ctrlWeb. GoBack();

⑥给刷新按钮参加如下代码:

m_h();

现在,根本的功能根本已经具备了。但有时在开发的过程中,我们不

仅仅满意于可以扫瞄,我们或许想要对特定的连接进展特别的处理,这就

涉及到如何得到你点击超连接时,得到该超连接的值的问题。WebBrowser

控件的TitleChange大事供应了这样的功能,下面我们看一下如何得到超

连接的内容。

⑦利用ClassWizard给该控件参加TitleChange大事,该函数的Text

参数即可以返回你点击的内容。在我的应用程序中是这样利用的。我的程

序中有一个有关地名的数据库,当TitleChange大事发生时,返回你所点

击的地名,然后到数据库中检索该地名,数据库中存有有关该地名的各种

信息,如视频、声音及文本资料等等,检索到之后,就可以在程序中对这

些资料进展显示、播放等操作了。到现在为止,你已经拥有了一个完全由

你自己随心所欲掌握的扫瞄器以及你想要扩大它的的功能的Idea了。

本文标签: 控件参加按钮扫瞄器对话框