千家信息网

Webbrowser 代码收集

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,1、禁止Webbrowes新窗口打开页面,强制在当前页面打开方法:放两个webbrowser控件,错码如下;procedure TForm1.WebBrowser1NewWindow2(Sender:
千家信息网最后更新 2025年01月24日Webbrowser 代码收集

1、禁止Webbrowes新窗口打开页面,强制在当前页面打开

方法:放两个webbrowser控件,错码如下;


procedure TForm1.WebBrowser1NewWindow2(Sender: TObject; var PpDisp: IDispatch;  var Cancel: WordBool);begin  PpDisp := WebBrowser2.Application;end;procedure TForm1.WebBrowser2BeforeNavigate2(Sender: TObject;  const PDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,  Headers: OleVariant; var Cancel: WordBool);var  urlStr: string;begin  urlStr := string(URL);  WebBrowser1.Navigate(urlStr );   Cancel := True;end;
 取到全部连接在USER 加入 MSHTML; 和 ActiveX;procedure TForm1.Button2Click(Sender: TObject);vardoc:IHTMLDocument2;all:IHTMLElementCollection;len,i:integer;item:OleVariant;begindoc:=WebBrowser1 .Document as IHTMLDocument2;all:=doc.Get_links;//doc.Linkslen:=all.length;for i:=0 to len-1 do beginitem:=all.item(i,varempty);//EmpryParammemo1.lines.add(item.href);end;end;/////////////////////////////////////////////////////////////////////////////////////////////////取得网页的源代码Memo1.Text:=WebBrowser1.OleObject.document.documentelement.innerhtml;//////////////////////////////////////////////////////////////////////////////////////////////////禁止广告弹出procedure TForm1.WebBrowser1NewWindow2(Sender: TObject;var ppDisp: IDispatch; var Cancel: WordBool);begincancel:=trueend;//////////////////////////////////////////////////////////////////////////////////////////////不需要弹出窗口直接进去procedure TForm1.WebBrowser1NewWindow2(Sender: TObject;var ppDisp: IDispatch; var Cancel: WordBool);varNewApp: TForm1;beginNewApp := TForm1.Create(Owner);NewApp.Visible := true;ppdisp := NewApp.webbrowser1.Application;end/////////////////////////////////////////////////////////////////////////////////////////////////只读文字procedure TForm1.Button1Click(Sender: TObject);varHTMLDocument: IHTMLDocument2;begin    HTMLDocument := WebBrowser1.Document as IHTMLDocument2;    Memo1.Text := HTMLDocument.body.innerText;end;///////////////////////////////////////////////////////////////////////////////////////////////////////复制uses Activex;下面这些加在哪里都可以。initialization oleinitialize(nil); finalization oleuninitialize;//////////////////////////////////////////////////////////////////////////////////////////////////////选择全部和复制procedure TForm1.Button2Click(Sender: TObject);beginWebBrowser1.ExecWB(OLECMDID_SELECTALL, OLECMDEXECOPT_PROMPTUSER, EmptyParam, EmptyParam);   //选择全部WebBrowser1.ExecWB(OLECMDID_COPY, OLECMDEXECOPT_PROMPTUSER, EmptyParam, EmptyParam);       //拷贝到剪贴板end;提交表单中的下拉框和单选uses mshtml;varHtmlDoc:IHTMLDocument2;myitem:Olevariant;i:integer;beginmyitem := WebBrowser1.Document;for i := 0 to myitem.all.length - 1 dobeginif myitem.all.item(i).tagName = 'SELECT' then // 下拉框选择beginmyitem.all.item(i).value:='2';                      // '2'系value="里的内容end;if myitem.all.item(i).tagName = 'INPUT' thenbeginif Uppercase(myitem.all.item(i).type)='RADIO' thenbeginif myitem.all.item(i).value='求' then myitem.all.item(i).checked:=true;end;end;end;end;  varo : Olevariant;begino := WebBrowser.OleObject.document.all.item('LoginUserID',0); //找到登录用户名的输入框o.value := 'TEST';o := WebBrowser.oleobject.document.all.item('LoginPassword',0); //找到登录密码的输入框o.value := 'TEST'WebBrowser.oleobject.document.Forms.Item(0, 0).submit; //第一个表单提交{o :=WebBrowser.oleobject.document.all.item('Login',0); //或者用指定表单名称提交o.Click; //点击操作,对其它对象也可同样操作}end;调用JAVASCRIPT函数WebBrowser1.OleObject.document.parentWindow.execScript('GSLogin()','javascript');多个frames的输入,FrameIndex为Frame的序号 var o : Olevariant; begin //找到登录用户名的输入框 o := WebBrowser.oleobject.document.documentelement.document.frames.item(FrameIndex).document.all.item('LoginUserID',0); o.value := 'TEST'; //找到登录密码的输入框 o := WebBrowser.oleobject.document.documentelement.document.frames.item(FramIndex).document.all.item('LoginPassword',0); o.value := 'TEST' //第一个表单提交 WebBrowser.oleobject.document.documentelement.document.frames.item(FramIndex).document.Forms.Item(0, 0).submit; { //或者用指定表单名称提交 o :=WebBrowser.oleobject.document.documentelement.document.frames.item(FramIndex)..document.all.item('Login',0); o.Click; //点击操作,对其它对象也可同样操作 } end;WebBrowser1.oleobject.Document.getElementById('button').Click;///////////////////////////////////////////////////////////////////////////////////////第1个item是女(0开始)WebBrowser1.OleObject.document.getElementsByTagName('input').item(1).click;或者用name,但name要唯一WebBrowser1.OleObject.document.all.item('Registered1').click

http://www.cnblogs.com/xe2011/p/3144861.html(有关Twebbrowers操作 )

判断Webbrowes里的Radio是否选中

网页源码:

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        

if Web1.OleObject.document.Frames.item(0).document.all.item('typeTab',2).checked then



0