一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

WebBrowser 操作記要(萬一博客)

 anggi_luo 2010-12-28
 


WebBrowser1.GoHome;  //到瀏覽器默認(rèn)主頁
WebBrowser1.Refresh;  //刷新
WebBrowser1.GoBack;  //后退
WebBrowser1.GoForward;  //前進(jìn)
WebBrowser1.Navigate(''...'');  //打開指定頁面
WebBrowser1.Navigate(''about:blank'');  //打開空頁面

//打開空頁面, 并寫入...

WebBrowser1.Navigate(''about:<head><title>標(biāo)題></title><body>頁面內(nèi)容

</body>'');

//讀取網(wǎng)頁腳本中的變量:

procedure TForm1.Button1Click(Sender: TObject);
var
  s: string;
  i: Integer;
begin
  s := WebBrowser1.OleObject.document.Script.str;
  i := WebBrowser1.OleObject.document.Script.num;
  ShowMessage(s);  //Hello
  ShowMessage(IntToStr(i));  //99

  //也可以這樣讀:
  s := WebBrowser1.OleObject.document.parentWindow.str;
  i := WebBrowser1.OleObject.document.parentWindow.num;
  ShowMessage(s);  //Hello
  ShowMessage(IntToStr(i));  //99
end;

假如網(wǎng)頁中有這樣的語句:<br> <script><br> var<br> str = 

"Hello";<br> i = 99;<br> </script>

//調(diào)用網(wǎng)頁腳本中的函數(shù):

procedure TForm1.Button1Click(Sender: TObject);
begin
  WebBrowser1.OleObject.document.parentWindow.MB(); //HTML-Js

  //如需指定腳本語言, 需要:
  WebBrowser1.OleObject.document.parentWindow.execScript(''MB

()'',''JavaScript''); //HTML-Js
end;

假如有這樣的腳本:<br> <script><br> function MB(){ <br> alert

(''HTML-Js'');<br> }<br> </script>

//判斷網(wǎng)頁及內(nèi)部框架網(wǎng)頁是否全部下載完畢

procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
  if WebBrowser1.Application = pDisp then
  begin
    Text := ''網(wǎng)頁下載完畢!'';
  end;
end;

//改變背景色或背景圖片:
WebBrowser1.OleObject.document.body.bgcolor := ''#FF0000'';
WebBrowser1.OleObject.document.body.background := ''...圖片地址'';

//操作有 ID 標(biāo)簽的對象:
var
  s: string;
begin
  s := WebBrowser1.OleObject.document.getElementByID

(''span1'').innerText;
  ShowMessage(s);  //這是 span1 標(biāo)簽中的內(nèi)容

  //或者:
  s := WebBrowser1.OleObject.document.parentWindow.span1.innerText;
  ShowMessage(s);  //這是 span1 標(biāo)簽中的內(nèi)容

  //隱藏它:
  WebBrowser1.OleObject.document.parentWindow.span1.style.display := 

''none'';
end;

假如網(wǎng)頁中有這樣的內(nèi)容:<br> <span id=span1>這是 span1 標(biāo)簽中的內(nèi)

容</span><br>

//獲取網(wǎng)頁源代碼
var
  s: string;
begin
  s := WebBrowser1.OleObject.document.body.innerHTML; //body內(nèi)的所有代


  s := WebBrowser1.OleObject.document.body.outerHTML; //body內(nèi)的所有代

碼, 包含body標(biāo)簽
  s := WebBrowser1.OleObject.document.documentElement.innerHTML; //html

內(nèi)的所有代碼
end;

//獲取網(wǎng)頁全部源代碼
uses ActiveX;
var
  ms: TMemoryStream;
begin
  if not Assigned(WebBrowser1.Document) then Exit;
  ms := TMemoryStream.Create;
  (WebBrowser1.Document as IPersistStreamInit).Save

(TStreamAdapter.Create(ms), True);
  ms.Position := 0;
  Memo1.Lines.LoadFromStream(ms, TEncoding.UTF8);
//  Memo1.Lines.LoadFromStream(ms, TEncoding.Default); {GB2312 等雙字節(jié)

}
  ms.Free;
end;

//WebBrowser 中的右鍵菜單

//先要添加ApplicationEvents1,指定其Message事件

//屏蔽右鍵菜單
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var 

Handled: Boolean);
begin
  with Msg do
  begin
    if not IsChild(WebBrowser1.Handle, hWnd) then Exit;
    Handled := (message = WM_RBUTTONDOWN) or (message = WM_RBUTTONUP) 

or (message = WM_CONTEXTMENU);
  end;
end;

//替換右鍵菜單
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var 

Handled: Boolean);
var mPoint: TPoint;
begin
  if IsChild(WebBrowser1.Handle, Msg.Hwnd) and
     ((Msg.Message = WM_RBUTTONDOWN) or (Msg.Message = WM_RBUTTONUP)) 

then
  begin
      GetCursorPos(mPoint);  //得到光標(biāo)位置
      PopupMenu1.Popup(mPoint.X, mPoint.Y);   //彈出popupmenu1的菜單
      Handled:=True;
  end;
end;

//新頁面寫入
begin
  WebBrowser1.Navigate(''about:blank'');
  WebBrowser1.OleObject.Document.Writeln(''ok'');
end;

//從流中寫入:
var
  ms: TMemoryStream;
begin
  ms := TMemoryStream.Create;
  Memo1.Lines.SaveToStream(ms);
  ms.Position := 0;
  (WebBrowser1.Document as IPersistStreamInit).Load

(TStreamAdapter.Create(ms));
  ms.Free;
end;

//禁止提示腳步錯(cuò)誤
procedure TForm1.WebBrowser1NavigateComplete2(ASender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
  WebBrowser1.Silent := True;
end;

//禁止彈出窗口
procedure TForm1.WebBrowser1NewWindow2(ASender: TObject; var ppDisp: 

IDispatch;
  var Cancel: WordBool);
begin
  Cancel := True;
end;


模擬點(diǎn)擊網(wǎng)頁中的按鈕

操作鏈接

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产视频一区二区三区四区| 日韩美女偷拍视频久久| 久久精品视频就在久久| 亚洲综合色婷婷七月丁香| 国产精品美女午夜视频| 人妻少妇系列中文字幕| 国产日韩精品欧美综合区| 成人精品一区二区三区综合| 中文字幕日韩欧美理伦片| 成人午夜视频在线播放| 亚洲精品日韩欧美精品| 久久三级国外久久久三级| 成年女人午夜在线视频| 色偷偷偷拍视频在线观看| 国产水滴盗摄一区二区| 日本少妇三级三级三级| 亚洲精品深夜福利视频| 精品人妻一区二区三区在线看| 高清免费在线不卡视频| 91日韩在线视频观看| 日韩中文字幕欧美亚洲| 日韩精品一级一区二区| 欧美日韩无卡一区二区| 五月婷日韩中文字幕四虎| 欧美一级日韩中文字幕| 日韩在线欧美一区二区| 国产免费黄片一区二区| 激情内射日本一区二区三区| 高清一区二区三区四区五区 | 成人区人妻精品一区二区三区| 亚洲国产综合久久天堂| 一级片黄色一区二区三区| 中文字幕不卡欧美在线| 中国黄色色片色哟哟哟哟哟哟| 千仞雪下面好爽好紧好湿全文| 欧美在线观看视频三区| 玩弄人妻少妇一区二区桃花| 久久综合狠狠综合久久综合| 国产av一区二区三区麻豆| 国产又粗又猛又黄又爽视频免费| 国产精品福利一二三区|