|
|
在VC中使用WebBrowser控件的两方法! U/ U: o/ B' D% t7 S
7 K% v2 {4 S( _# X, M) g' `
' h& V$ M6 h4 \0 p T/ h+ h
在VC中使用WebBrowser控件的两方法
" e. `6 a: q* \* v黄森堂(vcmfc)著
" P: B+ \- a" P$ b7 [% c# l, P: R& A! \* L
ClassWizard方式:
8 _' |. j/ O: G( K% }9 \0 Y3 k2 [- S. Z3 u, r0 u& c9 |" N
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
6 x6 Y2 k9 e0 ~# G2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)
% I& K4 p2 D* m' P3 z' l+ ~9 ]3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
- F, i$ p2 e P: |$ e$ X% Q m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
. {) {3 R) l7 k2 P1 E4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:6 W) I9 |% |' {3 {; J* _
m_internetexplorer.CreateDispatch();
* T2 h4 v% W1 }+ C7 F6 `5.在程序中指定URL地址后进行打开WEB页,如下代码:* b. ^9 w/ E* B3 O" @: \
VARIANT vInfo;% s: Q x" m5 I
vInfo.vt=VT_EMPTY; o3 |' o& o% ]! R) S( N: ^
m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);3 ]/ V4 K, Z! I* M# ? U/ t: q
m_internetexploret.SetVisible(TRUE);* ^8 w3 x* G H2 m. C! _2 i
9 h3 _( l4 P) p& h备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:& _/ N! s6 Y; Y! K
1.在VC中插入WebBrowser控件,并产生相应的包装类
# ^' h( t( t' n* j1 Q2.声明一个类变量,可用ClassWizard的变量映射来进行。
$ E6 d" n$ ~$ F2 e8 D3.在程序中指定URL地址后进行打开WEB页,如下代码:/ J* n& M, \+ M' l2 v$ N- n8 l0 A
VARIANT vInfo;
' N- S: ^- `+ K$ |4 a2 T vInfo.vt=VT_EMPTY;
& \) [6 i h5 d! o) U9 f m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
1 U4 j! m) A# P4 a m_internetexploret.SetVisible(TRUE);
+ n& U) p- Y9 e8 ]
3 V9 B; Y+ f1 a" b) {#import方式:
$ L9 m- g2 N, j' [
/ x- `: G$ ]! c$ i8 W6 f# n# Z1.使用import导入类,在你的类的头文件加入以下代码:
3 C# J( f: } W8 u0 F" ? #import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE" a& g. H2 m% {6 I" Z: @# h5 p4 a1 G
using namespace SHDocvw;
. L1 ?' X y( K8 ^. [% c2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;
7 K& q/ z. p: l- x9 v# u3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
: o! i0 m" D$ g3 @* b; \7 p m_internetexplorer->CreateInstance("InternetExplorer.Application.1";7 H1 ~' t; u, ?$ B' G4 ] @% i
4.在程序中指定URL地址后进行打开WEB页,如下代码:, h8 s$ g! l) A8 ]
VARIANT vInfo;6 K: X- g% P4 k9 r" q9 u
vInfo.vt=VT_EMPTY;
& Q) G7 U K- t' ~/ {6 P m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
, l/ A0 H0 ~/ \& r m_internetexploret-> utVisible(TRUE);
5 t3 C, Z( g6 u0 Z
( f; ?# J5 k; h0 Z& e# }/ C \以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过! |
|