WebBrowser控件屬性:
1、Application
如果該對象有效,則返回掌管WebBrowser控件的應用程序實現的自動化對象(IDispatch)。如果在宿主對象中自動化對象無效,程序將返回WebBrowser控件的自動化對象
2、Parent
返回WebBrowser控件的父自動化對象,通常是一個容器,例如是宿主或IE窗口
3、Containe
返回WebBrowser控件容器的自動化對象。通常該值與Parent屬性返回的值相同
4、Document
為活動的文檔返回自動化對象。如果HTML當前正被顯示在WebBrowser中,則Document屬性提供對DHTML Object Model的訪問途徑
5、TopLevelContainer
返回一個Boolean值,表明IE是否是WebBrowser控件頂層容器,是就返回true
6、Type
返回已被WebBrowser控件加載的對象的類型。例如:如果加載.doc文件,就會返回Microsoft Word Document
7、Left
返回或設置WebBrowser控件窗口的內部左邊與容器窗口左邊的距離
8、Top
返回或設置WebBrowser控件窗口的內部左邊與容器窗口頂邊的距離
9、Width
返回或設置WebBrowser窗口的寬度,以像素為單位
10、Height
返回或設置WebBrowser窗口的高度,以像素為單位
11、LocationName
返回一個字符串,該字符串包含着WebBrowser當前顯示的資源的名稱,如果資源是網頁就是網頁的標題;如果是文件或文件夾 ,就是文件或文件夾的名稱
12、LocationURL
返回WebBrowser當前正在顯示的資源的URL
13、Busy
返回一個Boolean值,說明WebBrowser當前是否正在加載URL,如果返回true就可以使用stop方法來撤銷正在執行的訪問操作<br/>
WebBrowser控件的事件:
<br/>
1、BeforeNavigate2 導航發生前激發,刷新時不激發
2、CommandStateChange 當命令的激活狀態改變時激發。它表明何時激活或關閉Back和Forward菜單項或按鈕
3、DocumentComplete 當整個文檔完成是激發,刷新頁面不激發
4、DownloadBegin 當某項下載操作已經開始后激發,刷新也可激發此事件
5、DownloadComplete 當某項下載操作已經完成后激發,刷新也可激發此事件
6、 NavigateComplete2 導航完成后激發,刷新時不激發 NewWindow2 在創建新窗口以前激發
7、OnFullScreen 當FullScreen屬性改變時激發。該事件采用VARIENT_BOOL的一個輸入參數來指示IE是全屏顯示方式(VARIENT_TRUE)還是普通顯 示方式(VARIENT_FALSE)
8、OnMenuBar 改變MenuBar的屬性時激發,標示參數是VARIENT_BOOL類型的。VARIANT_TRUE是可見,VARIANT_ FALSE是隱藏
9、OnQuit 無論是用戶關閉瀏覽器還是開發者調用Quit方法,當IE退出時就會激發
10、 OnStatusBar 與OnMenuBar調用方法相同,標示狀態欄是否可見。
11、 OnToolBar 調用方法同上,標示工具欄是否可見。
12、 OnVisible 控制窗口的可見或隱藏,也使用一個VARIENT_BOOL類型的參數
13、StatusTextChange 如果要改變狀態欄中的文字,這個事件就會被激發,但它並不理會程序是否有狀態欄
14、TitleChange 網頁標題有效或改變時激發
WebBrowser控件的函數:
1、 GoBack 相當於IE的”后退”按鈕,使你在當前歷史列表中后退一項
2、GoForward 相當於IE的”前進”按鈕,使你在當前歷史列表中前進一項
3、 GoHome 相當於IE的”主頁”按鈕,連接用戶默認的主頁
4、GoSearch 相當於IE的”搜索”按鈕,連接用戶默認的搜索頁面
5、 Navigate 連接到指定的URL
6、Refresh 刷新當前頁面
7、Refresh2 同上,只是可以指定刷新級別,所指定的刷新級別的值來自RefreshConstants枚舉表,該表定義在ExDisp.h中,可以指定的不同值 如下: REFRESH_NORMAL 執行簡單的刷新,不將HTTP pragma: no-cache頭發送給服務器 REFRESH_IFEXPIRED 只有在網頁過期后才進行簡單的刷新 REFRESH_CONTINUE 僅作內部使用 REFRESH_COMPLETELY 將包含pragma: no-cache頭的請求發送到服務器 <br><br/>
例子程序
1、WebBrowser1.OleObject.document.all.item('btnName').click;//根據頁面中按鈕的名稱執行其點擊事件
2、WebBrowser1.OleObject.document.getElementByID('btnID').click;//根據按鈕ID點擊
3、WebBrowser1.OleObject.document.getElementsByTagName('input').item(0).click;//根據按鈕索引點擊
4、WebBrowser1.OleObject.document.all.item('userName').value:=userName;//修改文本框信息,也可用ID,同上
5、ShellExecute(0,'open','www.baidu.com',nil,nil,SW_SHOW);//為瀏覽器打開一個網頁
1、去滾動條
procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); begin WebBrowser1.oleobject.Document.body.style.overflow:= 'hidden'; end;
2、滾屏
//uses MSHTML; var a: IHTMLDocument2; begin y:=y+20; //加減進行上下滾動 a :=WebBrowser1.Document as IHTMLDocument2; a.Get_ParentWindow.Scroll(x,y); end;
3、去邊框
WebBrowser1.OleObject.Document.Body.style.border := 'none'; WebBrowser1.OleObject.Document.Body.Style.margin := '0px';