|
|
在VC中使用WebBrowser控件的两方法
: x( ^( Q- V$ l2 d! d
- B: @" p! G: ?8 m7 L7 ] / O, ]5 w" d" c
在VC中使用WebBrowser控件的两方法% L) q5 t0 _* p) `* X1 C: X
黄森堂(vcmfc)著
' @1 {& G5 c) k$ c- D
3 N2 B) G' I1 NClassWizard方式:
/ e% M% L! Y% D( `# H4 s
: ]1 V$ s0 ?& u! ^( w. i1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
, _/ Z$ a9 b! z0 `2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)
! h& S# ]( [/ b( [* w: Q y& A( ?3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
9 T# _1 b) B+ D" @, u0 c* V m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
: E a) i/ ~" w0 J+ M% M U' o9 o4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
$ Q9 s$ E: a& E* T3 r m_internetexplorer.CreateDispatch();; j, x! @6 l+ J; \: j7 o" Q: k( `. U
5.在程序中指定URL地址后进行打开WEB页,如下代码:6 Y8 w# s: M e4 v; ], @6 b ?- R Z
VARIANT vInfo;
: D) R# T) g8 s8 n0 ~; } vInfo.vt=VT_EMPTY;7 K+ a. }2 ~; [6 P) ~! G. K q6 s
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
2 N3 R s- T/ s- z5 q m_internetexploret.SetVisible(TRUE);" }, o: l6 a9 [, m7 e+ ?3 A
/ P8 E* ]0 {" T/ j, V9 z5 F备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
3 a+ }2 v) i* S1.在VC中插入WebBrowser控件,并产生相应的包装类3 A# L( N+ L* R
2.声明一个类变量,可用ClassWizard的变量映射来进行。
; w& c, {4 c- G; @: r' K3.在程序中指定URL地址后进行打开WEB页,如下代码:
0 x' m: V# |1 W, v- {& N) { VARIANT vInfo;' U# ^) O1 }% X; O
vInfo.vt=VT_EMPTY;1 U# H) L2 C' z. p C
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);; P. k& z$ | ^" W' [
m_internetexploret.SetVisible(TRUE);, g' m% F' K: r4 }, X/ J
6 a; {2 A, B( g( E#import方式:
3 d# y B3 f- P/ ?; r% j# L, k7 I" k- e) l. _
1.使用import导入类,在你的类的头文件加入以下代码:5 j, G& v2 T2 x- v, d
#import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"" x/ A$ y! _0 F# t& a0 S; N$ i. t8 u
using namespace SHDocvw;& j8 Z" X) {: b# {2 D1 u
2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;! i3 C/ E5 f! q( c" `* i! l
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
. k/ L+ Y9 W0 B V- o m_internetexplorer->CreateInstance("InternetExplorer.Application.1";
6 w' B$ {6 i1 }) M! x+ s4.在程序中指定URL地址后进行打开WEB页,如下代码:
. A% X% H0 J; a8 {- \* k" e0 U VARIANT vInfo;
; O' h5 R, e' U$ u3 w8 Z; D vInfo.vt=VT_EMPTY;
" h* J) m- o; ] m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
- m/ S1 ]5 J* l2 J m_internetexploret-> utVisible(TRUE);
' |; G5 F; E3 I
' E8 D v6 t) T5 K2 C以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|