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

自己的IE——用VB制作浏覽器

編輯:VB綜合教程
程序的主角是一個ActiveX控件:WebBrowser。當然,缺省狀態下VB的工具箱中並沒有它,我們得手工加入,方法是:右擊工具箱,在出現的快捷菜單中選擇“部件...”,確保在彈出的對話框中選中“控件”標簽,找到MicrosoftInternetControls,在它前面的小框中打鉤,然後確定。此時你會發現工具箱中多了兩個小圖標,其中,地球圖標代表的控件正是我們需要的WebBrowser。
  由於許多人對WebBrowser控件不是很熟悉,VB的幫助中也沒有有關它的內容(反正我沒有找到),因此有必要介紹一下它的屬性、方法和事件,限於篇幅,我們只涉及程序中用到的:
  屬性:LocationURL返回控件顯示WEB頁面的URL。
  方法:Navigate轉移到指定的URL或打開指定HTML文件。
  事件:1.DownloadBegin下載操作開時觸發。
  2.DownloadComplete下載操作完成、終止或失敗時觸發。
  3.ProgressChangeWebBrowser控件跟蹤下載操作的過程,並定期觸發此事件。其語法為:SubWebBrowser_ProgressChange(ByValProgressAsLong,ByValProgressMaxAsLong)。Progress變元是當前已下載的數據總量,ProgressMax變元是將要下載的數據總量。
  4.TitleChange當前文檔標題改變時觸發
  除了WebBrowser控件外,程序還需要一個Label控件:Label1;一個ComboBox控件:
  combo1,用來顯示URL地址;一個StatusBar控件:StatusBar1;一個ProgressBar控件:
  ProgressBar1,用來顯示下載進度(StatusBar控件和ProgressBar控件是ActiveX控件MicrosoftWindowsCommonControls5.0的成員,加入工具箱的方法同WebBrowser控件),這些控件的屬性值都用缺省值。
  以下是程序清單:
  OptionExplicit
  
  PrivateSubForm_Load()
  Me.Caption=“MyExplorer”
  Label1.Caption=“URL”
  Combo1.Text=“”
  Combo1.Top=Label1.Height
  Combo1.Left=0
  WebBrowser1.Top=Combo1.Top+Combo1.Height
  WebBrowser1.Left=0
  Form_Resize
  StatusBar1.Style=sbrSimple
  ProgressBar1.ZOrder
  EndSub
  
  PrivateSubForm_Resize()
  OnErrorGoToa
  Combo1.Width=Form1.Width-100
  WebBrowser1.Width=Combo1.Width
  WebBrowser1.Height=Form1.Height-Combo1.Height-1000
  ProgressBar1.Top=Me.Height-StatusBar1.Height-330
  ProgressBar1.Left=0.25*StatusBar1.Width
  ProgressBar1.Width=0.75*Me.Width-250
  a:
  EndSub
  
  PrivateSubCombo1_Click()
  `轉到指定網址
  WebBrowser1.NavigateCombo1.Text
  EndSub
  
  PrivateSubCombo1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
  DimiAsLong
  DimexistedAsBoolean
  IfKeyCode=13Then
  IfLeft(Combo1.Text,7)<>“http://”Then
  Combo1.Text=“http://”+Combo1.Text
  EndIf
  WebBrowser1.NavigateCombo1.Text
  Fori=0ToCombo1.ListCount-1
  IfCombo1.List(i)=Combo1.TextThen
  existed=True
  ExitFor
  Else
  existed=False
  EndIf
  Next
  IfNotexistedThen
  Combo1.AddItem(Combo1.Text)
  EndIf
  EndIf
  EndSub
  
  PrivateSubWebBrowser1_DownloadBegin()
  `下載開始時狀態欄顯示“NowLinking...”
  StatusBar1.SimpleText=“NowLinking...”
  EndSub
  
  PrivateSubWebBrowser1_DownloadComplete()
  `下載完成時狀態欄顯示“LinkFinished”
  StatusBar1.SimpleText=“LinkFinished”
  ProgressBar1.Value=0
  EndSub
  
  PrivateSubWebBrowser1_ProgressChange(ByValProgressAsLong,
  ByValProgressMaxAsLong)
  `下載進行時進度條變化
  IfProgressMax=0ThenExitSub
  ProgressBar1.Max=ProgressMax
  IfProgress<>-1AndProgress<=ProgressMaxThen
  ProgressBar1.Value=Progress
  EndIf
  EndSub
  
  PrivateSubWebBrowser1_TitleChange(ByValTextAsString)
  Combo1.Text=WebBrowser1.LocationURL
  EndSub->

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