读书人

请问下webBrowser具体使用步骤

发布时间: 2012-03-07 09:13:51 作者: rapoo

请教下webBrowser具体使用步骤?
从载入到使用,详细步骤说下,谢谢。我在网上看到他的使用方法是这样的
ClassWizard方式:
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:winntsystem32shdocvw.dll->只选择IWebBrowserApp类->OK->OK
2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
m_internetexplorer.CreateDispatch("InternetExplorer.Application.1");
4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
m_internetexplorer.CreateDispatch();
5.在程序中指定URL地址后进行打开WEB页,如下代码:
VARIANT vInfo;
vInfo.vt=VT_EMPTY;
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
m_internetexploret.SetVisible(TRUE);
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
1.在VC中插入WebBrowser控件,并产生相应的包装类
2.声明一个类变量,可用ClassWizard的变量映射来进行。
3.在程序中指定URL地址后进行打开WEB页,如下代码:
VARIANT vInfo;
vInfo.vt=VT_EMPTY;
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
m_internetexploret.SetVisible(TRUE);
#import方式:
1.使用import导入类,在你的类的头文件加入以下代码:
#import "c:winntsystem32shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE")
using namespace SHDocvw;
2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
m_internetexplorer->CreateInstance("InternetExplorer.Application.1");
4.在程序中指定URL地址后进行打开WEB页,如下代码:
VARIANT vInfo;
vInfo.vt=VT_EMPTY;
m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
m_internetexploret->PutVisible(TRUE);



我参照1方法用了下,编译后发现存在这样的错误
f:\work\test\testdlg\shdocvw.h(5) : error C2011: 'IWebBrowserApp' : 'struct' type redefinition

谁能和我说下是什么原因?(我把#include "shdocvw.h"放到了StdAfx.h文件的#endif前面。另外,我把他写的m_internetexplorer.CreateDispatch();改成了m_internetexplorer.ReleaseDispatch();不知道是不是作者写错了)

这是一个基于对话框的程序.

[解决办法]
在要添加WEB BROWER控件的界面上右键,插入ACTIVEX控件,选择microsoft Web Browser,界面上就会出现web browser控件了。

使用:
m_ie.ModifyStyle(WS_BORDER, 0);//去掉边框
m_ie.ModifyStyleEx(WS_EX_CLIENTEDGE,0,0);
m_ie.Navigate(strUrl,NULL,NULL,NULL,NULL);
[解决办法]
使用CHtmlCtrl
http://www.vckbase.com/document/journal/vckbase6/winview/dialog/0604001.txt

用法是
CreateFromStatic(UINT nID, CWnd* pParent)这里输入静态文本框的ID和父窗口指针

其它使用跟CHtmlView一样

读书人网 >VC/MFC

热点推荐