首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Visual Basic > 利用VB实现对IE的调用与控制
【标  题】:利用VB实现对IE的调用与控制
【关键字】:VB,IE,VB,IE
【来  源】:网络

利用VB实现对IE的调用与控制

   随着网络应用的不断扩展,采用HTML语言编写的文档越来越多,如何在VB程序中实现对HTML文档的浏览是一个需要解决的问题。本文以一个实例说明了在VB中调用和控制Internet Explorer的方法。

   一、 编程准备

   VB通过OLE自动化技术创建和控制Internet Explorer对象的实例,因此,在新建一个工程后需要加入Microsoft Internet 控制的参考,方法是打开Visual Basic 的Project下拉菜单中的Reference…选项,单击Browse…按钮,在Windows的system目录下找到SHDOCVW.DLL并选中它,它是Internet Explorer的类库。

   二、 实现方法

   在窗体form1中添加表1所示的控件。 控件类型 控件名称 控件内容
Label Lable1 地址:
Text Text1 (空)
Command cmdView 浏览
Command cmdForward 向前
Command cmdBackward 向后
Command cmdCloseView 关闭浏览窗口
Command cmdExit 退出


   对上述窗体添加如下代码即可实现对Internet Explorer的调用与控制,

   Dim WithEvents ieView As InternetExplorer

   '在通用模块中定义Internet Explorer对象

   Private Sub Form_Load()

   cmdForward.Visible = False

   cmdBackward.Visible = False

   cmdCloseView.Visible = False

   '窗体调入时隐藏Internet Explorer控制按钮

   End Sub

   Private Sub cmdView_Click()

   Dim txtAddress As String

   On Error Resume Next '设置错误陷阱

   Set ieView = GetObject("", "InternetExplorer.Application")

   ieView.Visible = True

   '创建Internet Explorer对象的一个实例,并设为可见

   txtAddress = Trim(Text1.Text)

   ieView.Navigate txtAddress, navNoReadFromCache

   '按text1控件的内容进行浏览

   cmdView.Enabled = False

   cmdExit.Enabled = False

   cmdForward.Visible = True

   cmdBackward.Visible = True

   cmdCloseView.Visible = True

   '使浏览、退出命令钮无效,使IE控制命令钮可见

   End Sub

   Private Sub cmdForward_Click()

   On Error Resume Next '设置错误陷阱

   ieView.GoForward

   End Sub

   Private Sub cmdBackward_Click()

   On Error Resume Next '设置错误陷阱

   ieView.GoBack

   End Sub

   Private Sub cmdCloseView_Click()

   On Error Resume Next '设置错误陷阱

   ieView.Quit

   End Sub

   Private Sub ieView_OnQuit()

   Set ieView = Nothing

   '消除ieView对象

   cmdForward.Visible = False

   cmdBackward.Visible = False

   cmdCloseView.Visible = False

   cmdView.Enabled = True

   cmdExit.Enabled = True

   '恢复初始按钮状态

   End Sub

   Private Sub cmdExit_Click()

   End

   End Sub

   程序启动后"向前"、"向后"、"关闭浏览窗口"等命令钮不可见,在文本框内输入相应的URL地址,单击"浏览"按钮即可调入Internet Explorer进行浏览,此时,"向前"、"向后"、"关闭浏览窗口"命令钮转为可见,从而实现对浏览器的控制,单击"关闭浏览窗口"命令按钮可关闭当前打开的Internet Explorer窗口,此时窗口又还原为初始模样,可再次输入新的地址进行浏览。

   三、 注意问题

   1. 必须在最上层通用模块中定义Internet Explorer对象,并且将其定义为WithEvents类型以便响应由Active X组件触发的事件;

   2. 浏览时需用下述语句创建Internet Explorer对象实例,并设为可见:

   Set ieView = GetObject("", "InternetExplorer.Application")

   ieView.Visible = True

   退出时须消除该对象以释放内存,即

   Set ieView = Nothing

   否则会因大量占用系统资源导致系统不稳定。

   3. 调用和控制Internet Explorer过程中会产生各种错误,如在浏览器历史记录为空时,执行"向前"、"向后"操作就会产生OlE自动化错误,必须在"浏览"、"向前"、"向后"、"关闭浏览窗口"等命令按钮相应程序模块开始处加入错误捕获语句:

   On Error Resume Next

   以检测和处理类似错误,上述程序在Windows98、VB 5.0环境下调试通过。
VB编程经验之谈----打印篇:【上一篇】
Visual Basic6编程中的汉字处理:【下一篇】
【相关文章】
  • VB编程经验之谈----打印篇
  • VB编程:Windwos API全攻略
  • VB经验谈:限制输入的文本框
  • VB多类图片数据库存取技巧
  • 使用VB实现所见即所得功能
  • 用VB编写入侵监听程序(下)
  • 用VB实现DES加解密算法(一)
  • 用VB实现DES加解密算法(二)(1)
  • 用VB实现DES加解密算法(二)(2)
  • 用vb实现DES加解密算法(三)(1)
  • 【随机文章】
  • Debian的字体问题
  • 微软推出WPF/E CTP
  • WINDOWS+LINUX多重启动(转贴)
  • 使用WDM的宽带光接入网
  • BG-2000无线宽带网关
  • 封神榜 外卖推广版又名兔子特级攻略
  • 《MySQL管理员指南》之五--MySQL用户管理
  • 函数名称 FileSetAttr
  • HTML组件(HTML COMPONENTS)之三
  • 最佳 Linux
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.