找回密码
 注册
搜索
查看: 4184|回复: 0

在VC中使用WebBrowser控件的两方法

[复制链接]
发表于 2004-1-20 21:23:15 | 显示全部楼层 |阅读模式
在VC中使用WebBrowser控件的两方法: r% ^5 `- o8 n7 ?# U7 U+ J3 G2 Y

* ]! M/ A& o. h8 n( h8 v  * \  h; z$ n9 F1 V/ R7 o* y% D
在VC中使用WebBrowser控件的两方法
% z. N- n, `: w0 R黄森堂(vcmfc)著
. W1 {9 ]3 B+ o3 F) O3 J  b) S$ ]& W, b" E
ClassWizard方式:
. \2 o5 \; n& w% h* n$ E! |7 H/ j, m7 L  E, C6 k
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
, V8 |2 x; N9 i' D$ D- U2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)
- I7 s8 b# O! S( w" g# c% \: Y3 P- F3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:$ N1 `0 c( x- l* I7 w! e
  m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";! X1 C9 Z2 Z& X
4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
1 O, y' Y% K. Q$ u/ v8 T, k  m_internetexplorer.CreateDispatch();. l$ I, [2 j) {: P6 R5 v* [3 r
5.在程序中指定URL地址后进行打开WEB页,如下代码:, R8 g/ C% V  j1 i
  VARIANT vInfo;& z, v) Y. c, v3 l9 O! I
  vInfo.vt=VT_EMPTY;
) T' @; J. z  P7 t2 a# D* Z  m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
7 V8 Q: P+ M  M; b1 M  o& Y  m_internetexploret.SetVisible(TRUE);7 g; o2 S+ z; k  M
1 ^: P3 H3 k/ |& D0 v
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:( d  h( U. w* E* a1 |
1.在VC中插入WebBrowser控件,并产生相应的包装类& D: O. i" E! U; K, r( G
2.声明一个类变量,可用ClassWizard的变量映射来进行。: x) F! P3 K6 H5 O* {; c
3.在程序中指定URL地址后进行打开WEB页,如下代码:
" b) d. ]; D% t! E! {& a  VARIANT vInfo;5 R! q& W. P( ^+ }/ F) }" x& a
  vInfo.vt=VT_EMPTY;
  n1 P; C  x4 ^8 E) c  m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
2 F/ y3 v1 ~( |7 D6 s2 ^$ {  m_internetexploret.SetVisible(TRUE);8 k6 c, B- ^6 E2 V. k  ]
* I% _9 |' o7 F; b0 Y! G& k
#import方式:' d1 t0 o' z" [; e9 R

- w4 B8 H2 j  H- M2 i1.使用import导入类,在你的类的头文件加入以下代码:
+ M- h9 M" _! P  #import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"
* Q3 H! ]' ~1 v7 H8 a    using namespace SHDocvw;. Z5 [7 t# h* o; N) H( _; V
2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;0 l; q) u/ t2 M% X
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:4 {8 }( R2 E! M$ [6 ]) ]
  m_internetexplorer->CreateInstance("InternetExplorer.Application.1";$ H8 C4 ~) X% g4 v+ j
4.在程序中指定URL地址后进行打开WEB页,如下代码:3 X6 _7 A1 V  U4 r% S( v) ~
  VARIANT vInfo;
" R+ b+ n" x) c) o  vInfo.vt=VT_EMPTY;
/ [0 P0 K5 T# U, p% o  m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
7 F* @4 k$ ?! T+ f  m_internetexploret->utVisible(TRUE);
: p# R; `# Q) m1 I8 s. W6 G7 k5 O, {, g8 h; z  t5 K/ y
以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2025-9-30 13:16 , Processed in 0.035211 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表