|
|
在VC中使用WebBrowser控件的两方法9 u- Q) B* v) z+ Q5 x
, n- S6 ^$ ?$ u* }+ m
- T- W) R/ A8 G( J在VC中使用WebBrowser控件的两方法3 E+ r" p: f+ U) C
黄森堂(vcmfc)著
3 G" |9 ^" K& N& H6 }; o. L6 T4 q
ClassWizard方式:/ d4 U3 ^# r- {* ~2 O
+ p4 o% U1 ^) c1 p6 C1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
- T; F8 u9 x8 e" `2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)
; T6 `$ y3 H1 Q9 |3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:, _: X) m" i5 N5 q0 w
m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";( ^% {8 c7 H. e6 ]' a
4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:/ U2 R8 Q( U# W3 P V; ]6 B8 O
m_internetexplorer.CreateDispatch();
+ O/ H9 o: v. G) |5.在程序中指定URL地址后进行打开WEB页,如下代码:
+ x* N& D L% V VARIANT vInfo;
* T, b7 B0 h3 O7 O) }: V K vInfo.vt=VT_EMPTY;8 y0 T, e2 @7 n0 ^) @$ o- k% x$ _# J
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
+ R$ K" _4 R: C6 L0 F) I m_internetexploret.SetVisible(TRUE);
' L7 a, B) ]% P+ H7 |) q$ A1 F9 A% F4 _: H" h6 |! g v( |
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
$ h; L4 {1 V# {, e1.在VC中插入WebBrowser控件,并产生相应的包装类
) D* M; i* }7 N6 ^' b2.声明一个类变量,可用ClassWizard的变量映射来进行。7 Z; }, { I6 M& U3 G7 m- f2 t7 X3 G% u
3.在程序中指定URL地址后进行打开WEB页,如下代码:) u2 j1 g4 }0 F9 @) u4 \' q# B
VARIANT vInfo; E6 Y8 W; m0 w( I7 n H, v: G
vInfo.vt=VT_EMPTY;
* a. Q7 ^4 J# C: W$ ~) u m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);1 q3 H# F* P- c; k k
m_internetexploret.SetVisible(TRUE);
9 B( i( I6 v& t0 B: F9 D+ z: O) f9 c
9 W. c& i& D1 ?# F; C7 u! k( s, I+ Q#import方式:
0 q( z, i2 I6 f& q9 D# v+ P6 B! U/ {$ u# D0 _
1.使用import导入类,在你的类的头文件加入以下代码:6 l: ^+ ]( z) a0 {0 L
#import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"
! H: a5 J" R9 C! Z7 m2 e- R4 W2 d6 y' R using namespace SHDocvw;1 x7 [2 B5 t( l M
2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;* s, ~# R& \3 n1 N
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
% h0 p- b0 `4 n. ` m_internetexplorer->CreateInstance("InternetExplorer.Application.1";
! F% ?1 X* `$ W, ]& h4.在程序中指定URL地址后进行打开WEB页,如下代码:1 `6 h- }/ j! u* q+ ^ |
VARIANT vInfo;
8 H# H6 r) s+ y% K% y4 ? vInfo.vt=VT_EMPTY;% h+ A8 r8 `" Q8 \5 ?5 l
m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);% i; C# b7 \5 c
m_internetexploret-> utVisible(TRUE);
! e! T3 C( m8 v6 F7 H4 f8 K. B: q& J2 B
以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|