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

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

[复制链接]
发表于 2004-1-20 21:23:15 | 显示全部楼层 |阅读模式
在VC中使用WebBrowser控件的两方法
- W. `& U: w; s6 ?* |4 _0 I
% E, E' o. o/ Q% V. D3 f+ U& Q  ( C, B. \2 q! r  [! [+ d
在VC中使用WebBrowser控件的两方法
" W, D( v$ k3 x/ c黄森堂(vcmfc)著9 A) M7 `; H' V3 {6 T* U0 ?" H

0 t. g0 _! o0 ?( M5 D% s( qClassWizard方式:
  x% r4 I4 u9 r; A
4 C! R' g( Q8 {6 {1.创建包装类:View->ClassWizard->Add Class->Form a Type Library->C:\winnt\system32\shdocvw.dll->只选择IWebBrowserApp类->OK->OK- K9 e+ S' ^- @1 W/ h
2.声明一个类变量:IWebBrowserApp m_internetexplorer;,并包含刚才的头文件(xxx.h)7 ]- J2 {; R" y( _  X
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
) g- D6 x0 c# b( g  m_internetexplorer.CreateDispatch("InternetExplorer.Application.1";
" m" y" Y/ z7 i8 Q. O4.在类的析构函数中调用COleDispathDrive::ReleaseDispatch()函数,加载服务器,如下代码:
+ K- ]7 X  M! R% J) q  R# d  m_internetexplorer.CreateDispatch();# d3 b/ Q9 e6 P8 `
5.在程序中指定URL地址后进行打开WEB页,如下代码:
, p; w  j  }7 N. O7 u1 h  VARIANT vInfo;
- ~& M+ y: Z( s  vInfo.vt=VT_EMPTY;$ T5 B  y$ L, _
  m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);$ g8 j' {% e- P7 w1 L/ q9 a
  m_internetexploret.SetVisible(TRUE);
2 H& M$ d& O0 y0 ?. M1 a$ x; _, D( `+ _1 [- ?4 @
备注:还可以使用插入控件的方式来控制IE的,只需要几步就可以了,如下:
2 N! J% X- B% T8 L* v# E5 V! ^; \) E3 H1.在VC中插入WebBrowser控件,并产生相应的包装类
- ~8 H. x! s( m  I) c  q( p" t2.声明一个类变量,可用ClassWizard的变量映射来进行。
7 e8 |& F8 L* h( j  |9 z3.在程序中指定URL地址后进行打开WEB页,如下代码:% P7 J! }* o2 u8 s$ a7 D) k. \0 y: F8 b
  VARIANT vInfo;6 i5 `+ t( U* R% F3 j# D
  vInfo.vt=VT_EMPTY;* O) Q1 d) v8 f+ k# _% k6 J  n
  m_internetexplorer.Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);$ m9 {* I6 H$ v8 K9 G( v; t
  m_internetexploret.SetVisible(TRUE);$ ^' e$ \  h8 a! `6 E. z8 k

7 [! d' Y) I- N; A#import方式:: z, o4 Z" W, C; u# V( t+ c
/ X& h; y6 Z1 o5 T0 v& J" e/ ?1 j. e
1.使用import导入类,在你的类的头文件加入以下代码:7 Y3 Z9 F* ]) Z0 C8 L. k; k4 h
  #import "c:\winnt\system32\shdocvw.dll" rename ("tagREADYSTATE","tagIEREADYSTATE"/ T6 i- N& Y# O, L
    using namespace SHDocvw;
+ w) L+ |- V: v$ R2.声明一个类变量:IWebBrowserAppPtr m_internetexplorer;+ m- _* D4 ?# l. \0 V5 y: U$ p
3.在类的构造函数中调用COleDispathDrive::CreateDispatch()函数,加载服务器,如下代码:
7 `8 o- z0 }! D$ Q- r! i! `  m_internetexplorer->CreateInstance("InternetExplorer.Application.1";
# J9 \% w) A/ e6 i1 W/ ?4.在程序中指定URL地址后进行打开WEB页,如下代码:
; d, G5 ?: ]& [) ?  T  VARIANT vInfo;7 G( }; o$ D) e
  vInfo.vt=VT_EMPTY;
% U. Y, H: d, g, b4 v  m_internetexplorer->Navigate("地址",&vInfo,&vInfo,&vInfo,&vInfo);9 M8 T! q: B/ k. w- T1 x
  m_internetexploret->utVisible(TRUE);
7 N8 L4 r' O4 H! _
9 }4 c+ Z6 [& J* ?& z( T2 S以上是从《应用Visual Studio 6.0》书上摘下来的,本人没有测试过!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-20 07:55 , Processed in 0.036345 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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