说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB利用IE控件设计简易浏览器

HTML文档下载 WORD文档下载 PDF文档下载
VB利用IE控件设计简易浏览器
1999年第81、85两期的《电脑工作室》分别刊登了用C++ Builder和Visual C++开发简易浏览器两篇文章,给用户开发自己的简易浏览器提供了很好的方法。但大多数用户对这两种语言接触比较少,而Visual Basic用得比较多。下面我向大家介绍一种用VB6.0中的Microsoft Internet Controls控件制作简易浏览器的方法,供同行们参考。

  Internet Explorer控件

  如果机器中安装了IE3.0及其以上版本,在VB的控件列表窗口中就会有一个名为Microsoft Internet Controls的控件,我们可以利用该控件来制作简易浏览器。

  1.该控件有以下几个重要的方法:

  GoHome :装入 Internet Explorer设定的起始页。

  用法: object.GoHome

  Navigate : 装入页面。

  用法: object.Navigate url,其中url为URL地址,如“http:\\www.microsoft.com”

  GoBack : 返回上一个页面。

  用法: object.GoBack

  GoForward:进入下一个页面。

  用法: object.GoForward

  Refresh:刷新页面。

  用法:object.Refresh

  Stop : 停止载入页面。

  用法: object.Stop

  GoSearch:搜索页面。

  用法:object.GoSearch

  2该控件有以下重要事件:

  BeforeNavigate Event: 在每次装入页面前调用,声明如下:

  Private Sub object_BeforeNavigate(ByVal URL As String,ByVal Flags As Long, ByVal TargetFrameName As String, PostData As Variant, ByVal Headers As String, Cancel As Boolean)

  其中URL参数为将要装入的页面地址。

   StatusTextChang Event: 每次浏览器的操作状态改变时调用,声明如下:

  Private Sub WebBrowser1—StatusTextChange(ByVal Text As String)

  其中Text为浏览器的操作状态。

  DownloadComplete Event:页面下载结束后调用,声明如下:

  Private Sub WebBrowser1—DownloadComplete()

  NavigateComplete Event:登录结束后调用,声明如下:

  Private Sub WebBrowser1—NavigateComplete(ByVal pDisp As Object, URL As Variant)

  用该控件制作浏览器的方法

  下面介绍如何通过 Internet Explorer控件编程实现对WWW的访问。

  1.首先加载“Microsoft Internet Control”和“Microsoft Windows Common Controls 6.0(SP3)”。然后新建一表单Form1,在Form1中添加Microsoft Internet Control控件显示页面 WebBrowser1。

  2.在Form1中添加一个ToolBar控件ToolBar1和一个ImageList控件ImageList1,以实现对浏览器的操作。

  3. 在Form1中添加一个ComboBox控件Combo1,用来输入页面地址。

  4.在Form1中添加Label控件Label1,用来显示当前浏览器操作状态。

  5.在Form1中添加Label控件Label2,其Caption属性为“地址:”放在ComboBox 控件之前。

  控件事件代码

  Private Sub Form—Load()  

  ′程序装入后进入IE设定的起始页

   On Error Resume Next

   Me.Show

   ToolBar1.Refresh

   Form—Resize

   WebBrowser1.GoHome

   End Sub

  Private Sub Form—Resize()  

  ′改变窗口大小后同时改变控件的大小

   On Error Resume Next

   WebBrowser1.Width=Form1.ScaleWidth

   WebBrowser1.Height=Form1.ScaleHeight-950

   Label1.Width=Form1.ScaleWidth

   Label1.Top=Form1.ScaleHeight-200

  End Sub

  Private Sub ComBo1—Click()

   WebBrowser1.Navigate ComBo1.Text

  End Sub

  Private Sub Combo1—KeyPress(KeyAscii As Integer)  ′浏览输入的页面

   On Error Resume Next

   If KeyAscii = 13 Then

     ComBo1—Click

   End If   End Sub

  Private Sub WebBrowser1—BeforeNavigate(ByVal URL As String, ByVal FlagsAs Long,ByVal TargetFrameName As String, PostData As Variant, ByVal HeadersAs String, Cancel As Boolean)  ′将当前显示的页面的URL地址显示在 ComBo1上

   On Error Resume Next

   ComBo1.Text=URL

  End Sub

  Private Sub WebBrowser1—DownloadComplete()

   On Error Resume Next

   Me.Caption=WebBrowser1.LocationName

  End Sub

  Private Sub WebBrowser1—StatusTextChange(ByVal Text As String)  

  ′Label1显示当前页面装入情况

   On Error Resume Next

   Label1.Caption = Text

  End Sub

  Private Sub WebBrowser1—NavigateComplete(ByVal pDisp As Object, URL As Variant)

   On Error Resume Next

   Dim i As Integer

   Dim bFound As Boolean

   Me.Caption=WebBrowser1.LocationName

   For i=0 To Combo1.ListCount-1

     If Combo1.List(i)=WebBrowser1.LocationURL Then

      bFound=True

      Exit For  End If

   Next i

   If bFound Then

     Combo1 .RemoveItem i

   End If

   Combo1.AddItem WebBrowser1.LocationURL, 0

   Combo1.ListIndex=0

  End Sub

  Private Sub ToolBar1—ButtonClick(ByVal Button As Button)

   On Error Resume Next

   Select Case Button.Key

    Case ″Back″

       WebBrowser1.GoBack

    Case ″Forward″

       WebBrowser1.GoForward

    Case ″Refresh″

       WebBrowser1.Refresh

    Case ″Home″

       WebBrowser1.GoHome

    Case ″Search″

       WebBrowser1.GoSearch

    Case ″Stop″

       timTimer.Enabled=False

       WebBrowser1.Stop

  Me.Caption=WebBrowser1.LocationName

   End Select

  End Sub

  现在,单击启动你就可以使用你自己的浏览器了。该程序在Windows 98、Visual Basic 6.0下运行通过。
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘