步驟 說明 GoBack 無異于IE的“退后”旋鈕,,使你在目前歷史列表中退后一項 GoForward 等同于IE的“前行”旋鈕,,使你在目前歷史列表中前行一項 GoHome 等同于IE的“首頁”旋鈕,聯(lián)接用戶默許的首頁 GoSearch 無異于IE的“搜尋”旋鈕,,聯(lián)接用戶默許的搜尋頁面 Navigate 聯(lián)接到指定的URL Refresh 刷新現(xiàn)階段頁面 Refresh二 同上,,只是可以指定刷新級別,所指定的刷新級別的值來源于RefreshConstants枚舉表,, 該表定義在ExDisp.h中,,可以指定的不同值如次: REFRESH_NORMAL 實施簡略的刷新,不將HTTP pragma: no-cache毛發(fā)送給服務(wù)器 REFRESH_IFEXPIRED 惟獨在網(wǎng)頁逾期后才開展簡略的刷新 REFRESH_CONTINUE 僅作內(nèi)部運用,。在MSDN里寫著DO NOT USE! 切莫運用 REFRESH_COMPLETELY 將包孕pragma: no-cache頭的請求發(fā)送到服務(wù)器 Stop 無異于IE的“終止”旋鈕,,終止現(xiàn)階段頁面及其內(nèi)容的載入 屬性 說明 Application 如其該對象有效,則回到主持WebBrowser控件的應(yīng)用程序兌現(xiàn)的自動化對象(IDispatch),。如果在宿主對象中自動化對象無效,,這個程序?qū)⒒貋鞼ebBrowser 控件的自動化對象 Parent 回來WebBrowser控件的父自動化對象,通常是一個器皿,,比如是宿主或IE窗口 Container 回來WebBrowser控件器皿的自動化對象,。正常該值與Parent屬性回到的值雷同 Document 為活動的文檔回到自動化對象。如其HTML目前正被展示在WebBrowser中,,則 Document屬性提供對DHTML Object Model的訪問路徑 TopLevelContainer 回來一個Boolean值,,表明IE是不是是WebBrowser控件高層器皿,是便回來true Type 回到已被WebBrowser控件加載的對象的部類,。比如:如若加載.doc資料,,就會返 來Microsoft Word Document Left 回到或設(shè)立WebBrowser控件窗口的內(nèi)部左面與器皿窗口左面的距離 Top 回來或設(shè)立WebBrowser控件窗口的內(nèi)部左首與器皿窗口頂邊的距離 Width 回來或設(shè)立WebBrowser窗口的寬度,以像素為組織 Height 回到或設(shè)立WebBrowser窗口的高度,,以像素為機構(gòu) LocationName 回到一個字符串,,該字符串包含著WebBrowser現(xiàn)階段展示的資源的姓名,如若資源 是網(wǎng)頁乃是網(wǎng)頁的題目,;如果是資料或文件夾,,乃是資料或文件夾的姓名 LocationURL 回到WebBrowser現(xiàn)階段在展示的資源的URL Busy 回來一個Boolean值,說明WebBrowser目前是不是在加載URL,,如若回來true 就可以施用stop步驟來撤消在實施的訪問操作 http://hi.baidu.com/lovemoe/creat/blog/ Document 屬性 回到包孕 HTML 文檔姓名的字符串,。 Silent 屬性 禁止展示任何部類的對話框。 DocumentText屬性 獲取或設(shè)立現(xiàn)階段網(wǎng)頁的 HTML 內(nèi)容 Url 屬性 獲取或設(shè)立現(xiàn)階段網(wǎng)頁的 URL,。設(shè)立該屬性時,,會將該控件定位到新的 URL。 DocumentCompleted 事件 網(wǎng)頁完成加載時產(chǎn)生,。 BeforeNavigate 事 件 開 始 導 航 前 發(fā) 生,。 1 般 在 此 獲 取 完 整 的URL 字 符 串。 GoBack GoForward GoHome步驟 定位到歷史記錄中的上一頁和下一頁和首頁,。 Refresh步驟 刷新目前頁 Navigate 步驟 定位到指定的 URL,。Navigate 方 法 的 語 法 格 式 為: [Flags,][TargetFrameName,][PostData,][Headers] URL 參數(shù) Uniform Resource Locator獲 得 導 航 用 的 標 準URL 字 符 串,。 例 如: 它 會 將”www.MicroSoft.Com” 從 動 翻 譯 為”http://www.MicroSoft.Com”. webBrowser運用 http://hi.baidu.com/lovemoe/creat/blog/ 摘引Microsoft HTML Object Library和Microsoft Internet Controls控件 '獲取Document對象 Set WBD = WebBrowser一.Document 獲取網(wǎng)頁源代碼 WebBrowser一.Document.body.createtextrange().htmltext 最簡略的登陸 Set WBD = WebBrowser一.Document WBD.body.All('name').Value =' ' WBD.body.All('PASS').Value = ' ' WBD.Forms(零).submit 調(diào)用帶參數(shù)的javascript WBD.parentWindow.execScript 'document.login.submit()', 'javascript' 障蔽網(wǎng)頁的alert對話框 Private Sub WebBrowser一_NavigateComplete二(ByVal pDisp As Object, URL As Variant) pDisp.Document.parentWindow.execScript 'window.alert=null;' End Sub 遍歷 For mIndex = 零 To mDocument.Forms.length - 一 '輸出每個FORM Print mDocument.Forms(mIndex).Name lstLinks.AddItem '輸出聯(lián)接' For mIndexEx = 零 To mDocument.links.length - 一 '輸出聯(lián)接 lstLinks.AddItem mDocument.links(mIndexEx) Next lstLinks.AddItem '圖片地址' For mIndexEx = 零 To mDocument.images.length - 一 '輸出圖片 lstLinks.AddItem mDocument.images(mIndexEx).src '圖片地址 Next Next 數(shù)據(jù)下載完畢后操作 Private Sub WebBrowser一_DocumentComplete(ByVal pDisp As Object, URL As Variant) If URL <> 'Do If Not WebBrowser一.Busy Then Exit Do DoEvents Loop 取得瀏覽器信息:
Private Sub Command一_Click() WebBrowser一.Navigate 'http://www.' End Sub Private Sub Command二_Click() Dim oWindow Dim oNav Set oWindow = WebBrowser一.Document.parentWindow Set oNav = oWindow.navigator Debug.Print oNav.userAgent Set oWindow = Nothing Set oNav = Nothing End Sub (點擊Command一瀏覽網(wǎng)頁,點擊Command二在立地窗口中輸出瀏覽器信息,。) 彈出Webbrowser訊息窗口 Dim oWindow Set oWindow = WebBrowser一.Document.parentWindow oWindow.confirm 'abcd' 頁面滾動: Private Sub Command二_Click() WebBrowser一.Document.parentwindow.scrollby 零, 30 End Sub Private Sub Form_Load() WebBrowser一.Navigate 'http://www.' End Sub (點擊Command二就可以使目前頁面臨下滾動30像素) 判斷頁面是不是可此前進退后
Private Sub Command一_Click() WebBrowser一.GoForward End Sub Private Sub Command二_Click() WebBrowser一.GoBack End Sub Private Sub Form_Load() WebBrowser一.Navigate 'http://www.' End Sub Private Sub WebBrowser一_CommandStateChange(ByVal Command As Long, ByVal Enable As Boolean) If (Command = CSC_NAVIGATEBACK) Then Command二.Enabled = Enable End If If (Command = CSC_NAVIGATEFORWARD) Then Command一.Enabled = Enable End If End Sub 向Webbrowser中寫下HTML內(nèi)容的幾種步驟:
首先在Form_Load中加入 WebBrowser一.Navigate 'about:blank' 保準Webbrowser一可用 步驟一: Dim s As String Dim stream As IStream s = '' s = s + '' s = s + '' s = s + 'hello world ' s = s + '' s = s + ' WebBrowser一.Document.Write s 步驟二:
Dim o Set o = WebBrowser一.Document.selection.createrange Debug.Print o If (Not o Is Nothing) Then o.pasteHTML '哈哈哈' Set o = Nothing End If 步驟三:
'安插文本框 Dim o Set o = WebBrowser一.Document.selection.createrange o.execCommand 'InsertTextArea', False, 'xxx' 何以使網(wǎng)頁不出現(xiàn)滾動條: Private Sub mnuScroll一_Click() @#注意:務(wù)須在網(wǎng)頁完全展示以后才可以運作 WebBrowser一.Document.body.Scroll = 'no' @#不展示滾動條的辦法 End Sub Private Sub mnuScroll二_Click() @#注意:務(wù)必在網(wǎng)頁完全展示以后才可以運作 WebBrowser一.Document.body.Scroll = 'Auto' @#展示滾動條的辦法 End Sub 何以取得網(wǎng)頁中被選中一部分的HTML:
Private Sub Command一_Click() Dim objSelection Dim objTxtRange Set objSelection = WebBrowser一.Document.selection If Not (objSelection Is Nothing) Then Set objTxtRange = objSelection.createRange If Not (objTxtRange Is Nothing) Then Debug.Print objTxtRange.htmlText Set objTxtRange = Nothing End If Set objSelection = Nothing End If End Sub Private Sub Form_Load() WebBrowser一.Navigate 'http://www.' End Sub ================== 運用WebBrowser的Navigator也許Navigator二步驟打開一個asp文檔而且傳送 參數(shù)進入,,但是asp文檔沒法取得參數(shù),討教是什么原因,?
vb源碼: Private Sub cmdSubmit_Click() Dim strURL As String, strFormData As String Dim strData As String strURL = Trim$(txtURL.Text) strFormData = 'name=' & Trim$(txtName.Text) &
'&password=' & Trim$(txtPassword.Text) Call WBTest.Navigate二(strURL, 64, '_blank', strFormData, 'hello') End Sub asp源碼: *********************************************************************
Option Explicit Private Sub Command一_Click() Dim szValue As String WebBrowser一.Document.body.innerHTML = ' method=post action=http://地址/xxx.php> ' WebBrowser一.Document.Forms('post').submit End Sub
Private Sub Form_Load() WebBrowser一.Navigate二 'about:blank' End Sub Top ********************************************************************
在WebBrwoser控件里提供的Navigate或許Navigate二步驟中提供了傳送數(shù)據(jù) 的參數(shù),,調(diào)用形式為:WebBrowser一.Navigate二(URL,[Flags], [TargetFrameName],[PostData],[Headers]) 內(nèi)中PostData參數(shù)乃是一個交付參數(shù)目字符串,比如'name=aaa&password=123',, 但問題是為何這個步驟并不是有效的,,服務(wù)器端不能獲得數(shù)據(jù)? 如其這個步驟是有效的話就不需要用一段html代碼模擬這種調(diào)用了,。 下邊代碼能檢測出程序post出去的訊息 Private Sub WebBrowser一_BeforeNavigate二(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean) MsgBox PostData End Sub 何以利用 WebBrowser 控件,展示 .GIF 卡通?
要有一定的網(wǎng)頁常識(HTML,、JavaScript、CSS) 注意細節(jié): 沒'滾動條'和'鼠標右鍵彈出的 IE 前后文菜單','.HTM 源文件' ... 我寫了一個,成效還真不錯! 'Objects: Form一,、Command一,、CommonDialog一、WebBrowser一 Option Explicit Private Sub Command一_Click() CommonDialog一.ShowOpen If VBA.Len(VBA.Trim(CommonDialog一.FileName)) > 零 Then Dim p As stdole.StdPicture Dim sPath As String sPath = VBA.Trim(VBA.Trim(CommonDialog一.FileName)) Set p = VB.LoadPicture(sPath) WebBrowser一.Width = p.Width * 16 / 26 WebBrowser一.Height = p.Height * 16 / 26 ' WebBrowser一.Navigate 'about:blank' WebBrowser一.Document.open WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln 'WebBrowser一.Document.writeln ' WebBrowser一.Document.writeln 'WebBrowser一.Document.writeln ' ' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' End If End Sub Private Sub Form_Load() Command一.Caption = '&Open' WebBrowser一.Navigate 'about:blank' WebBrowser一.Document.open WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln 'WebBrowser一.Document.writeln '' WebBrowser一.Document.writeln '' WebBrowser一.Document.Close End Sub WebBrowser控件說明 步驟 說明 GoBack 等同于IE的“退后”旋鈕,,使你在現(xiàn)階段歷史列表中退后一項 GoForward 等同于IE的“前行”旋鈕,,使你在現(xiàn)階段歷史列表中前行一項 GoHome 無異于IE的“首頁”旋鈕,聯(lián)接用戶默許的首頁 GoSearch 無異于IE的“搜尋”旋鈕,,聯(lián)接用戶默許的搜尋頁面 Navigate 聯(lián)接到指定的URL Refresh 刷新目前頁面 Refresh二 同上,,只是可以指定刷新級別,所指定的刷新級別的值來源于RefreshConstants枚舉表,, 該表定義在ExDisp.h中,,可以指定的不同值如次: REFRESH_NORMAL 施行容易的刷新,不將HTTP pragma: no-cache毛發(fā)送給服務(wù)器 REFRESH_IFEXPIRED 惟獨在網(wǎng)頁逾期后才開展簡略的刷新 REFRESH_CONTINUE 僅作內(nèi)部運用,。在MSDN里寫著DO NOT USE! 切莫應(yīng)用 REFRESH_COMPLETELY 將包孕pragma: no-cache頭的請求發(fā)送到服務(wù)器 Stop 等同于IE的“終止”旋鈕,,終止目前頁面及其內(nèi)容的載入 屬性 說明 Application 如若該對象有效,則回到主持WebBrowser控件的應(yīng)用程序兌現(xiàn)的自動化對象(IDispatch),。如果在宿主對象中自動化對象無效,,這個程序?qū)⒒氐絎ebBrowser 控件的自動化對象 Parent 回來WebBrowser控件的父自動化對象,通常是一個器皿,,比如是宿主或IE窗口 Container 回到WebBrowser控件器皿的自動化對象,。正常該值與Parent屬性回到的值雷同 Document 為活動的文檔回到自動化對象。如其HTML現(xiàn)階段正被展示在WebBrowser中,,則 Document屬性提供對DHTML Object Model的訪問路徑 TopLevelContainer 回來一個Boolean值,,表明IE是不是是WebBrowser控件中上層器皿,是便回來true Type 回來已被WebBrowser控件加載的對象的門類。比如:如其加載.doc資料,,就會返 來Microsoft Word Document Left 回來或設(shè)立WebBrowser控件窗口的內(nèi)部左側(cè)與器皿窗口左面的距離 Top 回到或設(shè)立WebBrowser控件窗口的內(nèi)部左側(cè)與器皿窗口頂邊的距離 Width 回來或設(shè)立WebBrowser窗口的寬度,以像素為部門 Height 回來或設(shè)立WebBrowser窗口的高度,,以像素為組織 LocationName 回來一個字符串,,該字符串包含著WebBrowser目前展示的資源的姓名,如其資源 是網(wǎng)頁便是網(wǎng)頁的題目,;如果是資料或文件夾,,便是資料或文件夾的姓名 LocationURL 回來WebBrowser現(xiàn)階段在展示的資源的URL Busy 回來一個Boolean值,說明WebBrowser現(xiàn)階段是不是在加載URL,,如若回來true 就可以應(yīng)用stop步驟來取消在施行的訪問操作 WebBrowser 的事件 Private Events Description BeforeNavigate二 領(lǐng)航發(fā)作前激起,,刷新時不激起 CommandStateChange 應(yīng)下令的激活狀態(tài)改變時激起。它表明幾時激活或封閉Back和Forward 菜單項或旋鈕 DocumentComplete 應(yīng)整個文檔完成是激起,,刷新頁面不激起 DownloadBegin 應(yīng)某項下載操作已經(jīng)開始后激起,,刷新也可激起此事件 DownloadComplete 應(yīng)某項下載操作已經(jīng)完成后激起,刷新也可激起此事件 NavigateComplete二 領(lǐng)航完成后激起,,刷新時不激起 NewWindow二 在創(chuàng)造新窗口早先激起 OnFullScreen 應(yīng)FullScreen屬性改變時激起,。該事件采取VARIENT_BOOL的一個輸 進參數(shù)來指示IE是全屏展示形式(VARIENT_TRUE)仍是普普通通展示形式(VARIENT_FALSE) OnMenuBar 改變MenuBar的屬性時激起,標志參數(shù)是VARIENT_BOOL部類的,。 VARIANT_TRUE是足見,,VARIANT_ FALSE是暗藏 OnQuit 無論用戶封鎖瀏覽器仍是開發(fā)者調(diào)用Quit步驟,應(yīng)IE退出時就會激起 OnStatusBar 與OnMenuBar調(diào)用步驟雷同,,標志狀態(tài)欄是不是顯見,。 OnToolBar 調(diào)用步驟同上,標志工具欄是不是足見,。 OnVisible 統(tǒng)制窗口的足見或掩藏,,也運用一個VARIENT_BOOL門類的參數(shù) StatusTextChange 如若要改變狀態(tài)欄中的文字,這個事件就會被激起,,但它并不顧會程序是不是有狀態(tài)欄 TitleChange Title有效或改變時激起 WEBBROWSER 技藝(保藏)
看到很多對于WebBrowser控件禁止右鍵的提問,,恢復(fù)的步驟很多,其中有談到應(yīng)用微軟提供的 Webbrowser擴張COM服務(wù)器對象(WBCustomizer.dll),,但是該步驟在我們念施用Webbrowser編者網(wǎng)頁(Webbrowser一.Document.execCommand editMode)的時分有很多弊病,,例如不能展示選中的文本等。另有點步驟也就不要一一列舉了,。 這會兒我想談到的是至于MSHTML.HTMLDocument 引述Microsoft HTML OBject Library Rem #窗體代碼# Dim WithEvents M_Dom As MSHTML.HTMLDocument Private Function M_Dom_oncontextmenu() As Boolean M_Dom_oncontextmenu = False End Function Private Sub Webbrowser一_DownloadComplete() Set M_Dom = Webbrowser一.Document End Sub Rem 好了,,右鍵菜單沒了 ======================================================================= 控件調(diào)用和取得收藏夾里頭 大抵用 specialfolder(六 ) 就可以失去收藏夾的途徑, 其后你可以用dir去循環(huán)讀入每個索引,其后dir里頭的file, file的名字便是你要的歸藏的名字, 途徑可以自各兒依據(jù)從上頭失去的途徑去失去. 如其你不要dir也可以用vb的dir控件. Private Type SHITEMID cb As Long abID As Byte End Type Public Type ITEMIDLIST mkid As SHITEMID End Type Public Function SpecialFolder(ByRef CSIDL As Long) As String locate the favorites folder Dim R As Long Dim sPath As String Dim IDL As ITEMIDLIST Const NOERROR = 零 Const MAX_LENGTH = 260 R = SHGetSpecialFolderLocation(MDIMain.hwnd, CSIDL, IDL) If R = NOERROR Then sPath = Space$(MAX_LENGTH) R = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath) If R Then SpecialFolder = Left$(sPath, InStr(sPath, vbNullChar) - 一) End If End If End Function ================================================================ 是的,webbrowser本生是一個控件, 你要它全屏,乃是要它所在的窗體全屏, 可以用setwindowlong撤除窗體的 title, 用Call ShowWindow(FindWindow(Shell_traywnd, ), 零) 掩藏tray,乃是底下那個包孕開始那一起. 用Call ShowWindow(FindWindow(Shell_traywnd, ), 九) 回復(fù). 夠詳細了吧. 其后在form一.windowstate = 二 就可以了. ==================================================================== 取舍網(wǎng)頁上的內(nèi)容。 Private Sub Command一_Click() 請先選中一些內(nèi)容 Me.WebBrowser一.ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT MsgBox Clipboard.GetText End Sub ============================================================= 用IE來下載資料 Private Declare Function DoFileDownload Lib shdocvw.dll (ByVal lpszFile As String) As Long Private Sub Command一_Click()
Dim sDownload As String sDownload = StrConv(Text一.Text, vbUnicode) Call DoFileDownload(sDownload) End Sub 保留webbrowser中的HTML內(nèi)容 Dim oPF As IPersistFile Set oPF = WebBrowser一.Document oPF.Save 'TheFileNameHere.htm', False WebBrowser一.ExecWB怎么用 下部是我測試的參數(shù) WB.ExecWB(四,一) 四,一 封存網(wǎng)頁 四,二 保留網(wǎng)頁(可以重新命名) 六,一 直接打印 六,二 直接打印 七,一 打印預(yù)覽 七,二 打印預(yù)覽 八,一 抉擇參數(shù) 八,二 取舍參數(shù) 十,一 查看頁面屬性 十,二 查看頁面屬性 17,一 全選 17,二 全選 22,一 從新載入現(xiàn)階段頁 22,二 從新載入現(xiàn)階段頁 webbrowser確定對話框的準確步驟 webbrowser確定窗口對話框 某些網(wǎng)頁鑒于各種思忖會彈出對話框要求信息確認,,往往會中止我們的webbrowser進程,,可以施用如次步驟: 一.加入Microsoft Html Object 二.加入話語 Private Sub WebBrowser一_NavigateComplete二(ByVal pDisp As Object, URL As Variant) Dim obj As HTMLDocument Set obj = pDisp.Document obj.parentWindow.execScript 'function showModalDialog(){return;}' '對showModalDialog喚起的對話框進展確定 End Sub 而confirm挑動的會話確定框可用confirm輪換showModalDialog即可,Alert同等理~ WebBrowser獲得網(wǎng)頁源碼Private Sub Command一_Click() WebBrowser一.Navigate 'http://www./sdcity.php' End Sub Private Sub WebBrowser一_DownloadComplete() '頁面下載完畢 Dim doc, objhtml Set doc = WebBrowser一.Document Set objhtml = doc.body.createtextrange() If Not IsNull(objhtml) Then Text一.Text = objhtml.htmltext End If End Sub 我用WebBrowser獲得網(wǎng)頁源碼,直接運作通常,,但在編譯后疏失 揭示:實時差錯“91” Object 變量或 with 塊變量沒設(shè)立 可能是沒下載完所致,, Private Sub WebBrowser一_DownloadComplete() if webbrowser.busy=false then Dim doc, objhtml Set doc = WebBrowser一.Document Set objhtml = doc.body.createtextrange() If Not IsNull(objhtml) Then Text一.Text = objhtml.htmltext End If end if End Sub a.htm ---------------------- asdasdsad 建立一個EXE再窗體上置放一個WebBrowser控件,易名為web Private Sub Form_Load() web.Navigate 'c:/a.htm' DoEvents Do While web.Busy DoEvents Loop Set web.Document.ParentWindow.obj = Me End Sub
Public Sub w() MsgBox 'haha' End Sub post形式交付數(shù)據(jù) Option Explicit Private Sub Command一_Click() Dim szValue As String WebBrowser一.Document.body.innerHTML = ' ' WebBrowser一.Document.Forms('post').submit End Sub
Private Sub Form_Load() WebBrowser一.Navigate二 'about:blank' End Sub 本文來源: 我的異常網(wǎng) Java Exception Dotnet Exception Oracle Exception 3116 - checkout報error 3117 - HibernateException 3118 - eclipse3.2啟動報錯 3119 - Function is not supported 3120 - STRUTS1.1中html:errors中文不能正確顯示 3121 - html:errors中文不能正確顯示 3122 - ActionErrors如何在頁面上顯示 3123 - ActionErrors沒有提示信息 3124 - struts關(guān)于html:text錯誤 3125 - Struts截獲response.sendError 本文來自CSDN博客,,轉(zhuǎn)載請標明出處:http://blog.csdn.net/liangdiwei/archive/2010/01/04/5132480.aspx
|