|
|
在VC中使用WebBrowser控件的两方法8 W) c- r! Z, |- o2 \; j
5 d6 e1 }3 t& X' }1 ?
1 Y! t6 D- x* s8 i8 `
在VC中使用WebBrowser控件的两方法! r: o k! i+ |8 C* h
黄森堂(vcmfc)著
) ]) _) P& h* R! z% L& N; H0 V* ^! C7 s
ClassWizard方式:1 Y- n0 Y* t& `; g. L: K
/ l7 H1 c5 n$ n v3 T3 j# I) |1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
5 E [3 {: e+ X8 V Y2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)' m/ F) L* t3 `5 g& x+ K1 J- Q ?) z n7 ^
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
: W3 s, b, O& z5 e" Z# s$ ? m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
4 D/ ?. l' f! U q( X4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:, g b; i, ~- ]! Q% d
m_internetexplorer.CreateDispatch();3 Q% M9 _$ F$ L% `
5.在程序中指定URL地址后进行打开WEB页,如下代码:
; o! S+ c# |( H' @1 [7 ]& H4 G# z VARIANT vInfo;
4 c+ y* n$ R2 f& I* L- r2 e& n* S; U vInfo.vt=VT_EMPTY;+ E" n/ B. ?9 ]# r% R% T
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
% [+ P7 u' @, z m_internetexploret.SetVisible(TRUE);! B3 ]2 `5 V, F p4 g
% m% }! @- Y; P0 q6 f备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
& [- [( x# ~- v; X* s1 @1 G- d w1.在VC中插入WebBrowser控件,并产生相应的包装类1 W2 U7 [: o9 m) P: b0 O" e
2.声明一个类变量,可用ClassWizard的变量映射来进行。
! ^! ]) j4 w8 K+ |7 A' {# R7 i4 D3.在程序中指定URL地址后进行打开WEB页,如下代码:! H8 B( I: w, d! Y9 p& Z
VARIANT vInfo;8 p2 r6 F( a4 J; Y1 A! \, q6 f* l
vInfo.vt=VT_EMPTY;
! {6 A3 r, A( r# T% j. B m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo); d7 }. ^4 j5 E8 e, ]3 O
m_internetexploret.SetVisible(TRUE);4 m5 w/ q! l. f2 m L
' b5 G7 @! O! x3 L#import方式:; I2 _; q `' O% j" e
- @# P4 o6 P, ~* x: R1.使用import导入类,在你的类的头文件加入以下代码:2 D7 S/ a( i$ s1 {8 I
#import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"
$ ^8 L: n( `' i; i+ m+ }" P) ] using namespace SHDocvw;$ ~7 p$ k9 y4 u1 V& M* h
2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;
, l& E9 P: Z1 z4 p3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
/ M, B; a( h/ E8 s" f0 Q& T m_internetexplorer->CreateInstance("InternetExplorer.Application.1";; p5 u& R+ _: p" ?
4.在程序中指定URL地址后进行打开WEB页,如下代码:
8 ?+ ^5 K4 r/ J3 y' t. X# Y7 N VARIANT vInfo;0 E+ m% ]9 F" j% m% V) o1 v( \
vInfo.vt=VT_EMPTY;
4 w2 a4 t+ M. [2 [8 Y0 S m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);/ P# {+ I2 L V* c
m_internetexploret-> utVisible(TRUE);
r1 |$ a. t {0 |+ ^6 ?3 x5 f; z5 ~3 d& U( |" o
以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|