|
|
在VC中使用WebBrowser控件的两方法
# R7 B0 g3 R1 f0 G5 O7 h4 \8 D" \. V( V9 w; p
/ D& |+ F+ p% D' I9 [" i, E8 r) n' s在VC中使用WebBrowser控件的两方法
; X: D* R5 A! ?. u! c黄森堂(vcmfc)著: Y( I' P- e! Y$ T) Z( `4 }
2 \3 X3 P! f$ B' |; m* ?; k8 z" VClassWizard方式:
+ n/ D+ Y1 q& C, V1 T5 _( l# A2 \3 p8 E. i9 l
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
) D( a9 R, v. ]0 w' \2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)
& f% { u& B9 c- Z0 `3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
/ v/ ~! a% c2 P5 P) ^1 G) u m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";! w2 P: q' J4 W5 N5 v: W$ u8 F
4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
$ v* T# k" C, o2 b m_internetexplorer.CreateDispatch();
1 Y4 g4 B, j7 J; e; I5.在程序中指定URL地址后进行打开WEB页,如下代码:
G0 O0 f$ ~8 E: k: R VARIANT vInfo;+ p9 y9 u4 v8 k0 B, R- U1 e; m c' `- T
vInfo.vt=VT_EMPTY;
0 L& d8 S8 I8 T- g! a9 @ m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);' i1 n6 j9 J: L+ {; t" S$ U
m_internetexploret.SetVisible(TRUE);
+ h9 I9 O0 r+ N2 _2 j- F: p: c o
4 @% \1 ` Y7 l) W) c2 K* G- e备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:) C& C6 T6 j0 N- V
1.在VC中插入WebBrowser控件,并产生相应的包装类
6 l; b9 S8 E! w, o: U2.声明一个类变量,可用ClassWizard的变量映射来进行。' X7 w8 Z- K/ b! ^2 I
3.在程序中指定URL地址后进行打开WEB页,如下代码:7 l# }( F( O" o, y. O7 @ S2 F
VARIANT vInfo;
* [# E# D8 {) Y# w g vInfo.vt=VT_EMPTY;
3 P8 V9 m6 j: T: c V m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);' @; o5 {5 Q0 [2 |$ j
m_internetexploret.SetVisible(TRUE);
; f3 [: @2 \ W* O. l+ `' H
3 t& u3 z" r3 F#import方式:
! }6 N) I- s3 t7 K. ] n( k H
( y- |) q: n; n1.使用import导入类,在你的类的头文件加入以下代码:
6 w, W" d5 @( z5 C! F4 F0 P7 F7 H5 H7 J7 A #import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"
% J2 f- f$ h U/ J; r" U using namespace SHDocvw;
2 [, X5 e& q) j& o( _; K; H2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;5 Y! \( H c9 N7 P3 h" l
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
" X: }% d0 O7 p' O7 y m_internetexplorer->CreateInstance("InternetExplorer.Application.1";! { @1 P% f7 r
4.在程序中指定URL地址后进行打开WEB页,如下代码:% f7 @. d1 ^+ q
VARIANT vInfo;
. k9 m* k% s5 L vInfo.vt=VT_EMPTY;
' O- x4 F t6 G: ^3 c z m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
" l: p t6 S; g' h4 n, o m_internetexploret-> utVisible(TRUE);# q8 k, ^* G; K1 ]3 b( q9 _
& i' U! u0 U# y以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|