|
在VC中使用WebBrowser控件的两方法
" o' z3 i2 @2 k( i. {
. p' {* ~4 L7 A1 x8 _$ r2 H: V
2 k( I3 y/ k G( [# [在VC中使用WebBrowser控件的两方法- B7 c( Q/ m; ~1 S2 {' |& v7 ?
黄森堂(vcmfc)著; x7 U q; R! p% K! g& q" d
/ Z- E( w" {1 U U, C" V
ClassWizard方式:
/ S' M" k' O0 }, {8 z% I U7 B% \" u" F( i1 X, V+ o
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK; @& `/ P% a8 {) k* ~6 M
2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)9 x2 r& N9 a: e% u( D
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:6 d$ M4 R) p B, n9 e- V
m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
! x b5 E( `: U6 O8 }# L4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:. A- C8 Q6 V% R- a, V+ V
m_internetexplorer.CreateDispatch();3 J. e. ?0 u, Y4 J5 p
5.在程序中指定URL地址后进行打开WEB页,如下代码:9 X. }, l# G. l3 {
VARIANT vInfo;# K' G' ]. A" x) d3 l, D
vInfo.vt=VT_EMPTY; T' a# j! ]! o
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
' G1 A% h/ d; L! U* [ m_internetexploret.SetVisible(TRUE);5 s2 X' F' B. R# z2 c5 {- U
5 }0 Z+ g4 ~ H; Y, ^* m
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
5 W# o2 x0 S0 \- J) C& z" ]6 Y1 z1.在VC中插入WebBrowser控件,并产生相应的包装类2 N$ k, t' Q% d: ?% _) ~8 \, @
2.声明一个类变量,可用ClassWizard的变量映射来进行。
4 ]4 W) B& I1 w" s, Z; p3.在程序中指定URL地址后进行打开WEB页,如下代码:
' c, ~( z( a- h$ x$ f VARIANT vInfo;
. \3 Q! o# e6 H; r4 p vInfo.vt=VT_EMPTY;
' ?9 o X( w$ l, v4 L* ~ m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);7 R( d# O, `/ i# s. u& Q
m_internetexploret.SetVisible(TRUE);
/ S% J: F8 M* R
2 W: I3 t4 R) }5 q2 W#import方式:0 M* B" B7 q/ n. h
% D0 ]% K' I, A. G# ~: \# x: O& Y
1.使用import导入类,在你的类的头文件加入以下代码:7 f1 O2 ?! r0 v+ d8 ]# L
#import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"- R, g+ s4 T& X: j1 m/ F8 Q6 T( n2 m1 J- G5 Q
using namespace SHDocvw;
t6 _1 ?! v+ I8 A) z2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;/ i5 y: L9 v f* `# W4 M M$ p
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
1 x+ m' x) |. p& p, i8 b m_internetexplorer->CreateInstance("InternetExplorer.Application.1";& M$ K3 P7 Y, B! j
4.在程序中指定URL地址后进行打开WEB页,如下代码:
/ s% } W, M4 ^4 r2 P3 _$ D VARIANT vInfo;
]! m. \9 t- u$ A1 D: B4 F vInfo.vt=VT_EMPTY;+ R; {( O; k% l9 [
m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
3 S' H |# [$ { m_internetexploret-> utVisible(TRUE);8 L+ u5 V0 d5 T7 L" {, u: t2 V
; [1 o' P8 x9 d以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|