程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 利用VB實現對IE的調用與控制

利用VB實現對IE的調用與控制

編輯:VB綜合教程

  隨著網絡應用的不斷擴展,采用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(空)CommandcmdView浏覽Command cmdForward向前CommandcmdBackward向後CommandcmdCloseView關閉浏覽窗口CommandcmdExit退出

  對上述窗體添加如下代碼即可實現對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環境下調試通過。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved