91精品人妻互换日韩精品久久影视|又粗又大的网站激情文学制服91|亚州A∨无码片中文字慕鲁丝片区|jizz中国无码91麻豆精品福利|午夜成人AA婷婷五月天精品|素人AV在线国产高清不卡片|尤物精品视频影院91日韩|亚洲精品18国产精品闷骚

您當(dāng)前位置:首頁(yè) > 新聞?lì)l道 > 技術(shù)動(dòng)態(tài) > 正文
IE的調(diào)用與控制略談
隨著網(wǎng)絡(luò)應(yīng)用的不斷擴(kuò)展,采用HTML語(yǔ)言編寫(xiě)的文檔越來(lái)越多,如何在VB程序中實(shí)現(xiàn)對(duì)HTML文檔的瀏覽是一個(gè)需要解決的問(wèn)題。本文以一個(gè)實(shí)例說(shuō)明了在VB中調(diào)用和控制Internet Explorer的方法。

  一、 編程準(zhǔn)備

  VB通過(guò)OLE自動(dòng)化技術(shù)創(chuàng)建和控制Internet Explorer對(duì)象的實(shí)例,因此,在新建一個(gè)工程后需要加入Microsoft Internet 控制的參考,方法是打開(kāi)Visual Basic 的Project下拉菜單中的Reference…選項(xiàng),單擊Browse…按鈕,在Windows的system目錄下找到SHDOCVW.DLL并選中它,它是Internet Explorer的類(lèi)庫(kù)。

  二、 實(shí)現(xiàn)方法

  在窗體form1中添加表1所示的控件。 控件類(lèi)型 控件名稱 控件內(nèi)容
Label  Lable1 地址:
Text  Text1 (空)
Command cmdView 瀏覽
Command  cmdForward 向前
Command cmdBackward 向后
Command cmdCloseView 關(guān)閉瀏覽窗口
Command cmdExit 退出


  對(duì)上述窗體添加如下代碼即可實(shí)現(xiàn)對(duì)Internet Explorer的調(diào)用與控制,

  Dim WithEvents ieView As InternetExplorer

  '在通用模塊中定義Internet Explorer對(duì)象

  Private Sub Form_Load()

  cmdForward.Visible = False

  cmdBackward.Visible = False

  cmdCloseView.Visible = False

  '窗體調(diào)入時(shí)隱藏Internet Explorer控制按鈕

  End Sub

  Private Sub cmdView_Click()

  Dim txtAddress As String

  On Error Resume Next '設(shè)置錯(cuò)誤陷阱

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

  ieView.Visible = True

  '創(chuàng)建Internet Explorer對(duì)象的一個(gè)實(shí)例,并設(shè)為可見(jiàn)

  txtAddress = Trim(Text1.Text)

  ieView.Navigate txtAddress, navNoReadFromCache

  '按text1控件的內(nèi)容進(jìn)行瀏覽

  cmdView.Enabled = False

  cmdExit.Enabled = False

  cmdForward.Visible = True

  cmdBackward.Visible = True

  cmdCloseView.Visible = True

  '使瀏覽、退出命令鈕無(wú)效,使IE控制命令鈕可見(jiàn)



  End Sub

  Private Sub cmdForward_Click()

  On Error Resume Next '設(shè)置錯(cuò)誤陷阱

  ieView.GoForward

  End Sub

  Private Sub cmdBackward_Click()

  On Error Resume Next '設(shè)置錯(cuò)誤陷阱

  ieView.GoBack

  End Sub

  Private Sub cmdCloseView_Click()

  On Error Resume Next '設(shè)置錯(cuò)誤陷阱

  ieView.Quit

  End Sub

  Private Sub ieView_OnQuit()

  Set ieView = Nothing

  '消除ieView對(duì)象

  cmdForward.Visible = False

  cmdBackward.Visible = False

  cmdCloseView.Visible = False

  cmdView.Enabled = True

  cmdExit.Enabled = True

  '恢復(fù)初始按鈕狀態(tài)

  End Sub

  Private Sub cmdExit_Click()

  End

  End Sub

  程序啟動(dòng)后"向前"、"向后"、"關(guān)閉瀏覽窗口"等命令鈕不可見(jiàn),在文本框內(nèi)輸入相應(yīng)的URL地址,單擊"瀏覽"按鈕即可調(diào)入Internet Explorer進(jìn)行瀏覽,此時(shí),"向前"、"向后"、"關(guān)閉瀏覽窗口"命令鈕轉(zhuǎn)為可見(jiàn),從而實(shí)現(xiàn)對(duì)瀏覽器的控制,單擊"關(guān)閉瀏覽窗口"命令按鈕可關(guān)閉當(dāng)前打開(kāi)的Internet Explorer窗口,此時(shí)窗口又還原為初始模樣,可再次輸入新的地址進(jìn)行瀏覽。

  三、 注意問(wèn)題

  1. 必須在最上層通用模塊中定義Internet Explorer對(duì)象,并且將其定義為WithEvents類(lèi)型以便響應(yīng)由Active X組件觸發(fā)的事件;

  2. 瀏覽時(shí)需用下述語(yǔ)句創(chuàng)建Internet Explorer對(duì)象實(shí)例,并設(shè)為可見(jiàn):

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

  ieView.Visible = True

  退出時(shí)須消除該對(duì)象以釋放內(nèi)存,即

  Set ieView = Nothing

  否則會(huì)因大量占用系統(tǒng)資源導(dǎo)致系統(tǒng)不穩(wěn)定。

  3. 調(diào)用和控制Internet Explorer過(guò)程中會(huì)產(chǎn)生各種錯(cuò)誤,如在瀏覽器歷史記錄為空時(shí),執(zhí)行"向前"、"向后"操作就會(huì)產(chǎn)生OlE自動(dòng)化錯(cuò)誤,必須在"瀏覽"、"向前"、"向后"、"關(guān)閉瀏覽窗口"等命令按鈕相應(yīng)程序模塊開(kāi)始處加入錯(cuò)誤捕獲語(yǔ)句:

  On Error Resume Next

  以檢測(cè)和處理類(lèi)似錯(cuò)誤,上述程序在Windows98、VB 5.0環(huán)境下調(diào)試通過(guò)。
關(guān)鍵字:通訊
About Us - 關(guān)于我們 - 服務(wù)列表 - 付費(fèi)指導(dǎo) - 媒體合作 - 廣告服務(wù) - 版權(quán)聲明 - 聯(lián)系我們 - 網(wǎng)站地圖 - 常見(jiàn)問(wèn)題 - 友情鏈接
Copyright©2014安裝信息網(wǎng) m.78375555.com. All rights reserved.
服務(wù)熱線:4000-293-296 聯(lián)系電話:0371-61311617 傳真:0371-55611201 QQ: 郵箱:zgazxxw@126.com 豫ICP備18030500號(hào)-4
未經(jīng)過(guò)本站允許,請(qǐng)勿將本站內(nèi)容傳播或復(fù)制
安全聯(lián)盟認(rèn)證