利用VB實現對IE的呼叫與控制 (轉)
利用VB實現對IE的與控制
隨著應用的不斷擴充套件,採用HTML語言編寫的文件越來越多,如何在VB中實現對HTML文件的瀏覽是一個需要解決的問題。本文以一個例項說明了在VB中呼叫和控制Inte Explorer的方法。
一、 準備
VB透過OLE自動化技術建立和控制Internet Explorer的例項,因此,在新建一個工程後需要加入 Internet 控制的參考,方法是開啟 的Project下拉選單中的Reference…選項,單擊Browse…按鈕,在的system目錄下找到SHDOCVW.DLL並選中它,它是Internet Explorer的類庫。
二、 實現方法
在窗體form1中新增表1所示的。 控制元件型別控制元件名稱控制元件內容 Label Lable1 地址: Text Text1 (空) Command cmdView 瀏覽 Command cmdForward 向前 Command cmackward 向後 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 = Get("", "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、5.0環境下透過。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-990079/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 利用動態建立自動化介面實現VB的函式指標呼叫 (轉)函式指標
- VB操作IE瀏覽器完全控制瀏覽器
- 用VB開發IE (轉)
- VB實現抽象類 (轉)抽象
- 利用Oracle許可實現更好控制Linux(轉)OracleLinux
- 在vb元件內呼叫excel2000實現GIF餅圖 (轉)元件Excel
- 自己的IE——用VB製作瀏覽器 (轉)瀏覽器
- Vb下呼叫Help檔案 (轉)
- VB6.0中透過MSChart控制元件呼叫資料庫 (轉)控制元件資料庫
- VB動態呼叫外部函式的方法 (轉)函式
- 使用JNA實現Java對C的呼叫Java
- 利用VB 指令碼實現TIA 中介面迴圈計數的功能指令碼
- Vb中控制元件的自動排列 (轉)控制元件
- BCB:TEdit控制元件右對齊的簡單實現 (轉)控制元件
- 在VB中實現窗體的動態效果 (轉)
- 用VB實現“百葉窗”的圖形特效 (轉)特效
- (vb)利用GetBitmapBits,SetBitmapBits加速影像處理 (轉)
- 實現類似IE的列印網頁功能 (轉)網頁
- VB的ShowInTaskbar功能分析以及用VC的實現 (轉)
- 在Vb下實現多執行緒 (轉)執行緒
- VB實現SQL Enterprise Manager功能 (轉)SQL
- 在VB中用API實現多媒體 (轉)API
- 用VB實現螢幕陰暗操作 (轉)
- MX記錄獲取元件(vb實現) (轉)元件
- 利用快取實現APP端與伺服器介面互動的Session控制快取APP伺服器Session
- 利用swig實現python呼叫C/C++的方法PythonC++
- 使用Windows訊息控制Winamp(VB) (轉)Windows
- 利用顏色實現的口令程式(轉)
- 利用VB編寫螢幕保護程式 (轉)
- VB中實現窗體自動隱藏 (轉)
- 利用Delphi編寫IE擴充套件 (轉)套件
- vb呼叫winInet API介面post資料到指定的url (轉)API
- VB呼叫C程式的方法—動態連結庫法 (轉)C程式
- 再談在VB中呼叫VC++開發的DLL (轉)C++
- 利用ORACLE VPD實現使用者安全控制Oracle
- 走近VB.Net(二) 再談函式呼叫 (轉)函式
- 使用xstream實現對JavaBean與xml字串的互轉JavaBeanXML字串
- 利用IE6對!important的解釋差異做HackImport