|
|
在VC中使用WebBrowser控件的两方法
4 q2 W# T; }, j$ E1 x7 R' o$ s; S( V7 f
, s! t0 V. A! H
在VC中使用WebBrowser控件的两方法& E. j2 |0 m1 O4 x
黄森堂(vcmfc)著5 a+ g/ P1 |+ C7 ?6 @& c9 d
4 P7 A; z/ W+ S8 Z: T9 L% lClassWizard方式:
) v. ^3 S, p2 b" }, d6 c! P8 ~0 }: v* q
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK; G Y2 k1 z' l( ? m- n
2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)1 b- D) N+ X @2 E9 v7 x5 ~
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
/ F! r p. H+ }4 R+ ]6 ^ m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
; B! h. y( a9 N3 C. s0 N4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
% t4 L, L- ?3 @( t! u; c$ f m_internetexplorer.CreateDispatch();
* M& ?+ O" ?) d* X5.在程序中指定URL地址后进行打开WEB页,如下代码:9 O- l5 @. a) {$ y; ~( M4 c
VARIANT vInfo;: x0 p4 P3 l, R+ ]& A! h
vInfo.vt=VT_EMPTY;) b1 ^7 @& Q- |, |8 L
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);( u* X1 V6 B. j; ]% V
m_internetexploret.SetVisible(TRUE);
! b2 D- ^4 [' \& M: B \5 i; E% R- H- R
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
1 e3 I! s/ o' ^: i& M) z1 l8 w& x2 M1.在VC中插入WebBrowser控件,并产生相应的包装类: ?6 z. h3 B; N
2.声明一个类变量,可用ClassWizard的变量映射来进行。# f3 `6 \ u4 b; \
3.在程序中指定URL地址后进行打开WEB页,如下代码:9 w1 G3 S0 `, K9 P
VARIANT vInfo;3 B7 y# e- A( p& R. A
vInfo.vt=VT_EMPTY;. t+ m& q: b" C7 p$ [! K5 f6 e
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);: H$ d* T+ Z( M. W: F9 V/ ?5 N
m_internetexploret.SetVisible(TRUE);
8 v+ [' p( Z4 U) o0 S S2 q$ ]! o3 M5 Y# e4 w
#import方式:
0 T3 U) x0 A2 B* s( t" y
4 c2 K/ K: D4 Q4 W' l: s6 Y/ ?1.使用import导入类,在你的类的头文件加入以下代码:& d& l$ n9 t$ G9 |$ l$ _5 Q* t
#import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"8 M* }, a2 D* G$ U- E* b; ~
using namespace SHDocvw;
1 _' r: k: V6 q! U2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;4 _ w' @2 c- Q2 v6 C
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
9 E0 J! k3 H) ?" \4 J6 d' M m_internetexplorer->CreateInstance("InternetExplorer.Application.1";4 T7 S+ v D% A
4.在程序中指定URL地址后进行打开WEB页,如下代码:! E* N5 y+ Y& U g& t4 M7 | K
VARIANT vInfo;
( T) N' F0 ^8 k# W. I vInfo.vt=VT_EMPTY;% l8 z7 @: b7 q, X; t3 n
m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);! E5 @, e) P5 F8 Z0 ]
m_internetexploret-> utVisible(TRUE);
' q7 G& V6 ]1 p1 N1 T4 C, ~/ f9 A6 e4 \ A, i
以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|