找回密码
 注册
查看: 4578|回复: 0

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

[复制链接]
发表于 2004-1-20 21:23:15 | 显示全部楼层 |阅读模式
在VC中使用WebBrowser控件的两方法
; _/ [0 u- C* G8 p) f
* w+ e5 h- B% v& Y; l$ f3 A  j( o 
6 z. p  q* z3 W6 S在VC中使用WebBrowser控件的两方法  x& r; O: L8 T, X; W
黄森堂(vcmfc)著
( A6 [  Q8 `' E9 J0 B; v1 d" m4 Y, @7 _2 n
ClassWizard方式:
. J* y. A/ N0 r- v6 J) C0 O( P) U! F) q3 M
1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK
' \% u6 F+ K- ~1 ^' [2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)8 E% s/ B& f/ `. c, q
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:" A) t* F- h0 ?
  m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
- Y; }" L- ~' m( V% U/ |+ ?4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
$ b1 B" y) u0 V9 j0 N1 ]2 k$ A; v  m_internetexplorer.CreateDispatch();; p. ~5 i# Q- M! n
5.在程序中指定URL地址后进行打开WEB页,如下代码:% a* `0 F0 `% g
  VARIANT vInfo;
! [& \5 z* Y2 D7 b9 |  vInfo.vt=VT_EMPTY;
' l5 R0 h* Y7 S3 G7 s: I6 e  m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);* L. H8 l) y3 f7 y2 @# |$ W
  m_internetexploret.SetVisible(TRUE);4 b0 W3 y7 k% i( N
. Q  Y! ^$ F! W$ I, U$ B4 R
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:5 V- v4 \: D1 L
1.在VC中插入WebBrowser控件,并产生相应的包装类
1 y6 w5 R! G: p2.声明一个类变量,可用ClassWizard的变量映射来进行。0 Y/ H$ V- Z, k! \) j2 l) x# I
3.在程序中指定URL地址后进行打开WEB页,如下代码:/ T+ k2 y& W# W% h
  VARIANT vInfo;3 g* Z, G8 y/ @0 _0 K; {0 s
  vInfo.vt=VT_EMPTY;7 Q8 ?! g' j4 X! R% I9 h
  m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);
3 o; W/ g- K. K  V/ Q% i/ O  m_internetexploret.SetVisible(TRUE);$ [! @$ [$ {4 D- _* w& C7 e& ?
/ R) z/ V( A# o5 R9 A
#import方式:
5 T0 E) f2 w- j9 k4 t* x$ @2 R' F; ?6 S8 d" i
1.使用import导入类,在你的类的头文件加入以下代码:
+ F3 h8 F9 E  N( `. S  H+ j  #import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE") q9 Y+ t  |/ w( B; M
    using namespace SHDocvw;
* R% p. d& c0 O7 ?  ~' z: U2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;
2 s0 \  A+ ^) S  L6 ^+ ]3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:8 l0 e; q9 k0 ?6 M
  m_internetexplorer->CreateInstance("InternetExplorer.Application.1";
3 [) N$ c6 j' V* X3 |) H4.在程序中指定URL地址后进行打开WEB页,如下代码:7 N6 _& c: B* ]0 `1 O% e
  VARIANT vInfo;6 p" U' s& e' O* e( l& a) d
  vInfo.vt=VT_EMPTY;
, V! L5 ~6 O# c; `: B1 r  m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);' _$ R/ S8 t& |7 {) D" U" ~0 ?+ e
  m_internetexploret->utVisible(TRUE);
9 ?  A) t& r+ T' r
( h% p5 X: }! Q0 l2 S以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-10-2 04:13 , Processed in 0.018855 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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