delphi WebBrowser控件实现对IE浏览器的各种控制
DelphiWebbrowser使用方法详解(一)
DelphiWebbrowser使用方法详解(一)
1.webbroser介绍
该组件是一个浏览器组件,可以显示一个指定地址的网页、设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML 文件进行剪切、复制、粘贴、删除等操作。
该组件在Internet组件页中,属于TWebbrowser类。
它放在程序当中,可以像操作网页一样操作webbrowser控件。
2.webbrowser有哪些应用
webbrowser目前大多数都是完成自动提交或定时处理某种操作,例如:
1.网页数据采集,从别人的论坛里面把帖子采集出来,放到我们的论坛里面,例如火车头采集器;
2.发帖,不断的到百度贴吧或者其他论坛去发帖也称灌水;
3.网购,例如淘宝上限时秒抢之类的;
4.投票,不断的变换IP去投票;
5.抢火车票,不断的刷新火车票,一有票就提示抢购;
6.开发浏览器,像原来的的360,腾讯,搜狗浏览器都是基于IE 内核开发出来的;
3.同类控件
1.Indy中的idhttp 特点不可见,使用麻烦,有阻塞,但效率高;
2.ICS跟idhttp差不多
3.TEmbeddedwb第三方控件,跟webbrowser差不多,功能更强大,缺点是没有相关使用说明或资料;
本人目前使用的就是TEmbeddedWB,主要是该控件屏蔽弹窗很牛逼,而且能截获弹出窗口的信息,不管是不是带不带框架的,后续的介绍也都是基于TEmbeddedWB展开,它和webbroser的使用方法都差不多,有区别的会特意注明。
搞了N久的Webbroser,今天终于有心情把它总结出来贡献给大
家,希望能帮助到那些使用webbrowser的人们,转载请注明出处,谢谢!未完待续。
怎样采用Delphi编程轻松实现控制IE地址栏中的网址
( 者 :冯 诗 齐 ) 作
可 先 用 语 句 C li o z S e= f .i d i 得 到 字 段 的 总 长 度 l Fe S e0 d l z
C li ,再 一 次 将 字 段数 据读 到 B t oS e z y e数组 中 。
更 简便 的方 法 是 直 接 将 字 段 赋 值 :
M y t = f .au Da a l V le d
怎样 采 用 DeD i 程轻 松 实 现 控 制 I Ih 编 E地 址栏 中的 网址
o I是目 E 前使用最广的浏览器。 用户浏览网页时,E I会
将 已访 问 过 的 网站 地 址 保 存 在 I 的 地 址 栏 中 ,为 用 户 下 次访 E
问 同一 网站 时 免 去输 入一 长 串 网址 之 麻 烦 。 这 样 做 果 然 很 好 ,
但 由于 其 地 址栏 中 的 网址 为 只 读 属 性 ,用 户 不 能 自由 更 改 。 随 着 时 间 的 推 移 ,地 址 栏 中 的 记 录也 越 来 越 多 , 而 且 是 无 序 排 列 ,显 得 杂 乱 无 章 ,查 找 网址 非 常 不 便 。 虽 然 I 提 供 的 删 除 E 浏览 的历史记 录的功 能可 以一次性 清 除 I E地 址 栏 中 的 网址 .
MyDaa = f . t u k0 CoSz ) t t GeCh n (, lie d
将 拷 贝 出 的数 据 切 除 头 上 多 余 的 一 段
Fr o = 7 o UBo n ( Daa 4T u d My t )
My t 1I 4 =My a ai Daa 《一7 ) D t( )
图 6 设 置 控 件 的 Daa u c tSo re和 DaaFel 性 t i d属
用Delphi做简单的网页浏览器
用Delphi做简单的网页浏览器
1,在internet中找到webbrowers
2,拖到窗体上。
3,该组件常用方法有
begin
wb1.GoForward;//前进
end;
procedure TForm1.btn3Click(Sender:TObject);
begin
wb1.Stop;//停止
end;
procedure TForm1.btn4Click(Sender:TObject);
begin
wb1.Refresh;//刷新
end;
procedure TForm1.btn5Click(Sender:TObject);
begin
wb1.GoHome;//返回主页
edt1.Text:='about blank';
end;
procedure TForm1.tlb1Click(Sender:TObject);
begin
close;//退出
Navigate浏览
stop停goforward前进
这些都是访问网站常用的几个动作
4,设置界面
5,输入代码如下:
procedure TForm1.btn7Click(Sender:TObject);
begin
wb1.Navigate(edt1.Text);//浏览
end;
end;
procedure TForm1.btn1Click(Sender:TObject);
delphiWebBrowser的使用方法详解(五)
delphiWebBrowser的使用方法详解(五)/xtfnpgy/article/details/15809635网页代码:<SELECT id=fy onchange=TouchRefresh(1) name=fy> <OPTION selected value=15>每頁顯示15筆</OPTION> <OPTION value=30>每頁顯示30筆</OPTION> <OPTION value=60>每頁顯示60筆</OPTION></SELECT>1.webbrowser执行网页中的JS函数如果要执行T ouchRefresh(1)函数:webbrowser1.oleobject.document.parentwindow.ExecScript( 'TouchRefresh(1)’,'Javascript');webbrowser执行自己的JS函数:wb1.OleObject.document.parentwindow.ExecScript('alert(''自定义函数');','javascript');方法2:wb1.Navigate('javascript:alert(''执行成功!'');');2.webbrowser选择下拉列表varole : olevariantbeginole := webbrowser1.oleobject.document.GetElementByID('fy');ole.value := 60; //下拉框用value,复选框和多选框用checked:='true'ole.onchange; //调用onchange事件end;3.webbrowser按照Form提交(针对提交按钮无id和name的情况)网页代码:<FORM id=loginForm onsubmit="return validate_form()" method=post action=/pass/serviceLoginAuth2><INPUT id=passToken type=hidden name=passToken><INPUT style="DISPLAY: none" id=user class="input_kuang item errortip" name=user><INPUT style="DISPLAY: none" id=pwd class="input_kuang item errortip" value="" type=password name=pwd> <DIV class="sub_login flt_l"><INPUT class="no_bg" value=登入 type=submit></DIV>提交方法:webbrowser1.OleObject.document.forms.item('loginForm'). submit;4.webbrowser去掉滚动条在download事件中:webbrowser1.oleobject.Document.body.Scroll := 'no';webbrowser1.oleobject.Document.documentElement.style.o verflow := 'hidden';webbrowser控制滚动条滚动:webbrowser1.OleObject.document.parentwindow.scrollby(0, 100);//第一个参数横向,第二个竖向 scrollby滚动多少webbrowser1.OleObject.document.parentwindow.scrollto(0, 1000);// scrollto滚动到某个位置5.webbrowser屏蔽鼠标右键TEmbeddedWB设置DisabledPopupMenuItems属性webbrowser1.DisabledPopupMenuItems := [rcmDefault,rcmImage,rcmControl,rcmTable,rcmSelText,rcmAnch or,rcmUnKnown,rcmImageArt,rcmImgDynSrc,rcmDebug,rcmAll]6.webbrowser屏蔽网页图片TEmbeddedWB设置DownloadImages属性webbrowser1.DownloadOptions := [];7.webbrowser按照元素的属性获取元素function GetDocLinkByHref(doc : IHTMLDocument2;str_url:string):IHTMLAnchorElement;vari : Integer;label_iDispatch : iDispatch;label_element : IHTMLAnchorElement; //引用mshtmlbeginResult := nil;doc := webbrowser1.document as Ihtmldocument2;if not Assigned(doc) thenExit;for i:=0 to doc.links.length-1 dobeginlabel_iDispatch := doc.links.item(i,0);label_element := doc.links.item(I,0) as IHTMLAnchorElement;if (AnsiPos(str_url,(doc.links.item(I,0) as IHTMLElement).getAttribute('tag',0))>0)thenbeginResult := label_element;Break;end;end;end;8.webbrowser TEmbededwb屏蔽弹窗并捕获弹窗信息 //在 TEmbededwb的OnShowMessage事件中处理procedure TForm1.wb1NavigateComplete2(Sender: TObject;const pDisp: IDispatch; var URL: OleVariant);VARstr_url : string;beginWb1.OleObject.document.parentWindow.execScript('windo w.alert=null;','JavaScript');Wb1.OleObject.document.parentWindow.execScript('windo w.open=null;','JavaScript');Wb1.OleObject.document.parentWindow.execScript('windo w.close=null;','JavaScript');Wb1.OleObject.document.parentWindow.execScript('windo w.showModalDialog=null;','JavaScript');Wb1.OleObject.document.parentwindow.execscript('functio n confirm() {return true;}','Javascript');end;function TForm1.webbrowser1ShowMessage(Sender: TObject; HWND: Cardinal; lpstrText, lpstrCaption: PWideChar; dwType: Integer; lpstrHelpFile: PWideChar;dwHelpContext: Integer; var plResult: Integer): HRESULT;beginplResult := IDOK; //屏蔽alert\open\close等弹窗Result := S_OK; //屏蔽confirm确认框,并点击确认mmo1.Lines.Add(lpstrText); //lpstrText即为捕获到的弹窗内容end;屏蔽WebBrowser页面中的声音procedure CloseSound;varhWinmm: Cardinal;pwaveOutWrite: Pointer;lp: Cardinal;beginhWinmm := LoadLibrary('Winmm.dll');if hWinmm > 0 thenpwaveOutWrite := GetProcAddress(hWinmm, 'waveOutOpen');if pwaveOutWrite <> nil then beginVirtualProtect(pwaveOutWrite, 3, PAGE_EXECUTE_READWRITE, lp);Move(#C2#C2#18#$00, pwaveOutWrite^, 3);end;end;//强制Webbroser使用IE8内核 SetWBCoreIE8(8000);procedure SetWBCoreIE8(i_value:Integer);varstr_exeName : string;reg : TRegistry;begintrystr_exeName :=RightFromStr(Application.ExeName,'\',False);reg := TRegistry.Create;reg.RootKey := HKEY_LOCAL_MACHINE;if reg.OpenKey('Software\Microsoft\Internet Explorer\Main\FeatureControl', False) thenbeginif not reg.KeyExists('FEATURE_BROWSER_EMULATION') then reg.CreateKey('FEATURE_BROWSER_EMULATION');end;reg.CloseKey;if reg.OpenKey('Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION ', False) thenbeginreg.WriteInteger(str_exeName,i_value);// if not reg.ValueExists(str_exeName) then// begin// reg.WriteInteger(str_exeName,i_value);// end;end;reg.CloseKey;reg.Free;exceptend;end;最后奉献以前收集的关于WB的文章链接:Delphi Webbrowserdelphi 模拟自动登录网页webbrowserdelphi webbrowser查找对象实现自动登录_delphi webbrowser与delphi互动WebBrowser组件和MSHTML 在Delphi中的使用Delphidelphi中Webbrowser - Max Woods - 博客园WebBrowser组件和MSHTML 在Delphi中的使用webbrowser轻松实现自动填表WebBrowser 操作记要 - 万一 - 博客园delphi中Webbrowser的使用技巧 - wystec的日志 - 网易博客delphi webbrowser 遍历网页元素Delphi7 Webbrowser制作网页表单自动提交器按步分析(1) - 中星9号 - 博客园delphi中如何在多线程环境下操作webbrowser控件delphi利用webservise登陆百度VB WebBrowser 为页面添加代码的方法_百度知道关闭webbrowser的弹出框(对话框Delphi中WebBrowser(或者EmbeddedWebBrowser)控件打开部分网站报“Invalid floating point operation”异常的解决方法- XuXn - 博客园Delphi中webbrowser的document 对象的属性方法事件_硬软兼得博客_新浪博客Delphi获取句柄并发送消息delphi WebBrowser获取iframe页面内容Twebbrowser如何写多线程? - Delphi _ 网络通信_分布式开发【发现】如何屏蔽掉WebBrowser在刷新网页等时候发出的声音- Boringlamb - 博客园对ExtendedWebBrowser的再扩展(续)_呼吸空间_百度空间接收IWebBrowser2的自动化事件_My_百度空间delphi WebBrowser 开发浏览器_SAP学习_abap_百度空间【转】WebBrowser的Cookie操作(与CookieContainer的关系)_奎宇工作室_百度空间蓝鸟-Delphi的WebBrowser改造,对网页中Alter等对话框的改造方法(转载)如何找到webbrowser打开网页中flash的接口?能否用这个接口控制flash的播放?_VC高级研究_积木群组webBrowser获取网页flash句柄模拟单击的问题- .NET技术_ C#VB 如何向 WebBrowser1 中的flash发送左边点击事件 - VB _ 网络编程用WebBrowser实现HTML界面的应用扩展WebBrowser 控件DragWebBrowser FlashGameWebBrowser_C# 视角_CS程序员之窗WebBrowser 设置代理(100分) - Delphi _ 网络通信_分布式开发屏蔽WebBrowser页面中传出来的声音 - jxgxy - 博客园可以对同一个程序中的多个WebBrowser设置不用的代理服务器吗?本地:双线路、双IP、双网卡设置上网_我是谁?—Andy Gu_百度空间Delphi中使用EmbeddedWB屏蔽指定内容的网页对话框- Patrick Pullman - 博客园Web Browser Control –Specifying the IE Version - Rick Strahl's Web LogWebBrowser与IE的关系,如何设置WebBrowser工作在IE9模式下? - BobLiu - 博客园WebBrowser 中,无法释放内存? - CSDN论坛 - 为什么浏览器会使用多进程架构。
Delphi禁止WebBrowser弹出IE的对话框
Delphi禁止WebBrowser弹出IE的对话框.docWebBrowser如何关闭弹出的alert对话框,我找了很久也没有解决办法。
我的程序是用delphi写的。
有试过几种方法。
第一种用WMActivate(var Msg: TWMActivate); message WM_ACTIVATE; 事件在正常情况下可以自动关闭,但我的程序是运行在系统托盘的,在最小化到托盘后,这个事件就不起作用了。
第二种用obj.parentWindow.execScript "function showModalDialog(){return;} 类似的方法,网页本页面弹出的对话框可以屏蔽,但我的程序调用了某个ASPX 页面,它是提交后返回时弹出对话框的,也不起作用了。
对话框弹出的时候,只有WebBrowser控件不可用,程序还是正常运行的,我就用个Timer 来FindWindow('IEFrame',nil) 然后SendMessage关闭事件,但是根本没效果。
程序只差一个功能完工了啊,500高分求解!问题补充:~还有匿名回答啊可以了,多谢,到这边拿分吧/question/83500340.html/question/83092023.html多任务网页定时刷新器/abingpow/blog/item/42cb0fd731bc3ddaa044dffe.html最佳答案在CSDN上有类似的问题,参见/u/20080313/00/5e2add09-6103-405f-8f6b-6bbb220e9cfd. html以下代码经测试有用(2011年1月5日测试)。
function CallBackProc(H, HMainForm: hwnd): Boolean; stdcall;varhChild : hwnd;beginResult := True;if GetParent(H) = HMainForm then begin //可以在这里进一步判断类名,以免关掉其他弹出窗口hChild := FindWindowEx(H, 0, PChar('Button'), PChar('确定'));if hChild > 0 then SendMessage(hChild, BM_Click, 0, 0);end;end;procedure TForm1.Timer1Timer(Sender: TObject);beginEnumWindows(@CallBackProc, Self.Handle);end;procedure TForm1.Button1Click(Sender: TObject);beginSelf.WebBrowser1.Navigate('C:\Documents and Settings\jiaotongju\桌面\test2\test.htm');end;procedure TForm1.Button2Click(Sender: TObject);beginSelf.Timer1.Enabled := True;//Web页面装载完毕后开启Timerend;procedure TForm1.FormCreate(Sender: TObject);beginSelf.Timer1.Enabled := False;Self.Timer1.Interval:= 100;end;附CSDN的原稿:在CSDN上有类似的问题,参见/u/20080313/00/5e2add09-6103-405f-8f6b-6bbb220e9cfd. html我程序中用WebBrowser打开一个网页,点击网页上的一个提交按钮时会弹出一个对话框(对话框是网页中的alert函数产生),造成程序的执行中断,需要手工点一下(或按回车)确定按钮才能继续,现在我想通过程序自动关闭这个对话框,请大家帮帮我!楼上的方法没用的,webbrowser里的js弹出的对话框是堵塞的,当用程序调用click方法时,代码是堵塞在click里的.俺不知道楼上您和楼主的JS代码是什么样子的。
delphi webbrowser 使用方法
delphi webbrowser 使用方法Delphi WebBrowser 使用方法Delphi WebBrowser是一种强大的组件,可以嵌入web页面到Delphi应用程序中。
本文将详细介绍使用Delphi WebBrowser的各种方法。
1. 安装和引用要使用Delphi WebBrowser,首先需要做以下几步操作:1.下载并安装Delphi WebBrowser组件包。
2.打开Delphi IDE,创建新项目或打开现有项目。
3.在项目中导入WebBrowser组件包(在IDE的”Component”菜单中选择”Install Packages”)。
2. 创建和显示WebBrowser使用Delphi WebBrowser,你可以轻松创建和显示一个WebBrowser窗口。
以下是一个简单的示例:procedure (Sender: TObject);beginWebBrowser1 := (Self);:= Self;:= alClient;('end;在上述示例中,我们使用Form的OnCreate事件创建了一个WebBrowser对象,并将其展示在一个窗口上。
属性Align设置为alClient,将WebBrowser充满整个窗口。
最后,通过调用Navigate 方法,我们使WebBrowser加载了指定的网址。
3. 与Web页面交互Delphi WebBrowser允许你与嵌入的Web页面进行交互。
以下是一些常用方法的示例:执行JavaScript代码你可以使用Delphi WebBrowser的方法来执行JavaScript代码并获取返回值。
以下示例演示了如何执行JavaScript代码并将结果显示在一个Label控件中:procedure (const ACode: string);varvJsResult: OleVariant;begin// Execute JavaScript code and get the resultvJsResult := (ACode, 'JavaScript');:= vJsResult;end;操作DOM元素要操作Web页面中的DOM元素,你可以使用Delphi WebBrowser 的方法来获取和修改元素的属性和内容。
Delphi 中WebBrowser控件详解实例
Delphi 中WebBrowser控件详解实例2008-10-18 下午 06:58很久都没有原创了,前几天帮朋友做了个网址发布程序,主要应用到了WebBrowser控件。
今天主要给大家演示一下过程,让大家学习一下Delphi工具。
WebBrowser功能:1。
自动加载网页2。
去除WebBrowser滚动条3。
WebBrowser自身打开页面4。
禁止右键1。
首先,新建一个FROM窗体:2。
加入一个WEBBROWSER控件3。
调整后如下:4.这样一个webbrowser就完成了,下一步我们来让程序打开后自动加载一个网页。
核心代码:WebBrowser1.Navigate('');双击窗体灰色处,对窗体进行初始化,在代码窗口中输入(Begin 与 End间输入核心代码):procedure TForm1.FormCreate(Sender: TObject);beginWebBrowser1.Navigate(''); //窗体初始化完成WEBBROWSER加载一个网页end;5。
下面我们来实现禁止WEBBROWSER控件的滚动条功能:核心代码:WebBrowser1.oleobject.Document.bod y.Scroll:= ‘no’;利用这个代码去掉滚动条的前提是webbrowser中必须有打开的网页,也就是在网页加载完完毕后再去掉滚动条。
所以首先要判断页面是否加载完毕,如果加载完毕,就执行上面的语句去掉滚动条。
这时就要引入一个按扭控件来触发程序加入SPEEDBUTTEN调整形后:好了,现在可以实现禁止滚动条的功能了:第一步:在WebBrowser1DocumentComplete事件中置一个标志tag:=1(代表加载完毕)单击WEBBROWSER控件,在WebBrowser属性的EVENS事件中找到WebBrowser1DocumentComplete (双击)然后在代码窗口中输入:procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);begintag:=1; //去掉Webbrowser1滚动条的标志end;对SpeedButten控件操作:(双击onClick)加入如下代码:procedure TForm1.SpeedButton1Click(Sender: TObject); varDoc: IHTMLDocument2;begintag := 0; //去掉Webbrowser1滚动条的标志WebBrowser1.Navigate2(’’);while(tag=0) do Application.ProcessMessages; WebBrowser1.oleobject.Document.body.Scroll := ‘no’; end;注意:使用前必须在uses中加入mshtml;这样WebBrowser就禁止了滚动条。
delphi TWebBrowser组件使用详解
delphi TWebBrowser组件使用详解该组件是一个浏览器组件,可以显示一个指定地址的网页、设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切、复制、粘贴、删除等操作。
该组件在Internet组件页中。
1.属性(1)AddressBar属性设置是否显示地址栏,在TWebBrowser中没有用。
语法:property AddressBar: WordBool;(2)Busy属性确定Web浏览器组件是否正在导航到一个新的URL地址或正在下载文档。
语法:property Busy: WordBool;示例:如果该属性值为True,则在开始一个新的操作前,可用Stop方法中止当前操作,然后再导航到其他的页面,代码如下:procedure TForm1.BitBtn1Click(Sender: TObject);beginif WebBrowser1.Busy thenWebBrowser1.Stop;WebBrowser1.Navigate('');end;(3)Container属性访问Web浏览器父类或容器的接口。
语法:property Container: IDispatch;示例:如果Web浏览器没有一个具有Automation接口的容器,则该属性的值为空。
否则可以通过返回的接口,访问Web浏览器父类或容器,代码如下:if WebBrowser1.Container <> nil thenbeginWebBrowser1.Stop;endelseShowMessage('Web浏览器没有一个具有Automation接口的容器');(4)ControlInterface属性访问WebBrowser组件接口,这个接口允许一个Automation控制器访问Web浏览器的属性、方法和事件。
语法:property ControlInterface: IWebBrowser2;示例:显示WebBrowser1组件的名称,代码如下:Showmessage();(5)FullName属性指定主机上Web浏览器组件的可执行文件的完整的合法路径名。
delphi tedgebrowser 用法
Delphi TEdgeBrowser 是一款基于 Microsoft Edge 的浏览器控件,适用于 Delphi 编程语言。
它提供了一种简单而强大的方式,使开发人员能够在他们的 Delphi 应用程序中嵌入现代的 Web 浏览体验。
在本文中,我们将介绍 Delphi TEdgeBrowser 的用法,包括如何在Delphi 项目中集成该控件,以及如何利用其丰富的功能实现各种需求。
一、引入 Delphi TEdgeBrowser 控件要开始使用 Delphi TEdgeBrowser,首先需要确保你已经安装了最新版本的 Delphi,并且已经下载了 Delphi TEdgeBrowser 的 SDK。
一旦确认这些前提条件已满足,你就可以在 Delphi 项目中引入TEdgeBrowser 控件了。
在 Delphi 的界面设计器中,通过组件面板找到 TEdgeBrowser 控件,并将其拖拽到你的窗体或其他容器控件上即可。
二、基本用法一旦将 TEdgeBrowser 控件添加到你的 Delphi 项目中,你就可以开始享受其强大的功能了。
通过简单的几行代码,你就可以加载网页、执行 JavaScript 脚本以及与网页内容进行交互。
以下是一个简单的示例代码,演示了如何加载一个网页:```pascalprocedure TForm1.FormCreate(Sender: TObject);beginEdgeBrowser1.Navigate('end;```三、与网页交互除了简单的加载网页之外,Delphi TEdgeBrowser 还提供了丰富的API,使开发人员能够与嵌入的网页内容进行交互。
你可以通过调用TEdgeBrowser 控件提供的方法和事件来执行各种操作,例如执行JavaScript、修改网页内容、捕获网页事件等。
以下是一个演示如何执行 JavaScript 脚本的示例代码:```pascalprocedure TForm1.Button1Click(Sender: TObject);beginEdgeBrowser1.ExecuteScript('alert("Hello, world!")');end;```四、事件处理Delphi TEdgeBrowser 还支持各种事件,使开发人员能够监控和响应浏览器控件的各种状态变化和用户操作。
delphi edgebrowser 用法
delphi edgebrowser 用法Delphi EdgeBrowser是Delphi编程语言中的一个组件,它提供了在应用程序中嵌入和使用Microsoft Edge浏览器的功能。
Delphi是一种强大的开发工具,它集成了许多组件和库,使开发人员能够构建各种类型的应用程序,包括具有浏览器功能的应用程序。
在本文中,我将逐步介绍Delphi EdgeBrowser的用法,帮助您了解如何使用它来嵌入和控制Microsoft Edge浏览器。
第一步:准备环境首先,您需要确保已安装Delphi开发工具。
您可以从Embarcadero官方网站下载免费试用版或购买完整版。
安装完成后,启动Delphi并创建一个新的项目。
第二步:添加EdgeBrowser组件在Delphi中,您可以通过“组件”面板查看和管理可用的组件。
请通过单击Delphi窗口右侧的“组件”标签将其打开。
在“组件”面板中,您可以查找并选择“EdgeBrowser”组件。
将其拖放到您的窗体上。
第三步:配置EdgeBrowser组件添加了EdgeBrowser组件之后,我们需要对其进行一些配置。
选中EdgeBrowser组件,并查看对象属性面板。
您可以通过双击组件或在“对象属性名称”框中手动选择该组件。
在属性面板中,您可以设置EdgeBrowser的各种属性,以满足您的需求。
其中一些重要的属性包括:- URL: 设置要加载的网页的URL。
- Visible: 设置EdgeBrowser是否可见。
- Navigate: 导航到指定URL。
您可以根据需要分别配置这些属性。
例如,将URL属性设置为“第四步:添加事件处理程序为了与EdgeBrowser组件进行交互,您可以使用事件处理程序来捕获特定事件并执行自定义代码。
例如,在用户点击链接时,您可能希望打开链接的新标签页。
要添加事件处理程序,请选择EdgeBrowser组件并在属性面板中查找“事件”选项卡。
delphi edgebrowser 用法
delphi edgebrowser 用法Delphi是一个流行的编程语言和集成开发环境(IDE),用于开发Windows平台上的应用程序。
EdgeBrowser是Delphi的一个第三方组件,它允许在应用程序中嵌入和操作Microsoft Edge浏览器。
使用Delphi EdgeBrowser可以实现许多有趣和强大的功能,如在应用程序中加载网页、操纵DOM元素、监控浏览器事件等。
首先,要使用Delphi EdgeBrowser组件,我们需要下载并安装它。
可以在互联网上搜索“Delphi EdgeBrowser”来找到并下载合适的版本。
下载完成后,解压缩文件并将DLL文件添加到Delphi项目的组件路径中。
接下来,我们需要在Delphi应用程序中创建一个TWebBrowser组件来承载EdgeBrowser。
在Delphi的窗体设计器中,将TWebBrowser组件拖放到窗体上。
然后,通过设置TWebBrowser组件的属性来指定EdgeBrowser的行为。
例如,可以设置TWebBrowser的Url属性来加载指定的网页。
在应用程序中加载网页后,我们可以使用EdgeBrowser的一些方法和属性来与网页进行交互。
例如,可以使用EdgeBrowser的Navigate方法在TWebBrowser中加载指定的URL。
可以使用EdgeBrowser的Stop方法停止加载网页。
可以使用EdgeBrowser的Refresh方法刷新当前网页。
Delphi EdgeBrowser还提供了许多其他功能,如在网页上执行JavaScript代码、截取网页的截图、获取网页元素等。
可以使用EdgeBrowser的ExecuteScript 方法来执行JavaScript代码。
可以使用EdgeBrowser的Capture方法来截取网页的截图。
可以使用EdgeBrowser的DOM接口来获取和操作网页元素。
除了上述基本功能之外,Delphi EdgeBrowser还提供了一些高级功能,如监控浏览器事件、拦截和修改HTTP请求等。
用Delphi控制IE窗口
用Delphi控制IE窗口
程序说明
本程序用于打开IE、链接到指定的网页、获取IE地址栏中的URL地址信息及该窗口名称、激活最近打开的窗口以及关闭最近打开的窗口。
程序的界面如图1:
设计思想
使用Delphi编程控制IE的方法有多种,在本程序中使用DDE来控制IE,应注意须先确保IE已经运行,因为此时IE要作为DDE服务器,用户的程序只能作DDE客户端,而DDE客户端无法与一个没有运行的服务器进行数据交换。
在本程序中调用API函数ShellExecute来打开IE。
图1
在本程序中使用DDE客户端时用到了类TDdeClientConv的以下几个函数及过程:
其中,参数Service为DDE服务器的ApplicationName,对IE来说就是Iexplore;参数Topic是DDE会话的TopicName,不同功能对应的Topic不同;参数Item为会话
的ItemName,也因功能不同而不同。
函数SetLink用来设置会话主题,若成功返回True,否则返回False;函数RequestData用来返回会话的数据。
设计步骤
新建一个应用程序,为窗体加入两个Edit组件、6个Button组件。
各组件属性如图2:
图2
在uses中加入对DDEman,ShellAPE和ComObj单元的引用,并定义一个TDdeClientConv类型的全局变量DDE。
编写相关代码。
delphiWebBrowser的使用方法详解(四)
delphi WebBrowser 的使用方法详解(四)delphi WebBrowser 的使用方法详解(四) -webbrowser 轻松实现自动填表分类:Delphi Webbrowser TembeddedWB 2013-11-01 17:02 220 人阅读评论(0) 收藏举报目录(?)[+]webbrowser 轻松实现自动填表步骤如下:第一步:获取网页调用Webbrowser 的Navigate 系列函数。
等待网页装载完成,得到document 对象。
在调用webBrowser.Document 之前,请确保Webbrowser 网页装载完成,可以通过Webbrowser 的DocumentCompleted 事件进行监视。
小技巧先指定一个变量步骤如下:第一步:获取网页调用Webbrowser 的Navigate 系列函数。
等待网页装载完成,得到document 对象。
在调用webBrowser.Document 之前,请确保Webbrowser 网页装载完成,可以通过Webbrowser 的DocumentCompleted 事件进行监视。
小技巧先指定一个变量:IsCompleted在调用Webbrowser 的Navigate ,Refresh 系列函数之前,将IsCompleted 设为false。
在DocumentCompleted 事件中,如果ReadyState 为plete(值为4),则设IsCompleted 为true.调用webBrowser.Document 之前对IsCompleted 进行判断。
如果不为true,则延时循环等待,直到IsCompleted被设为true.第二步:设置网页元素数据确保得到document 对象之后,通过GetElementById 获取网页元素,如:HtmlElement user = webBrowser.Document.GetElementById("user"); HtmlElement password =webBrowser.Document.GetElementById("password"); 设置网页元素值:user.InnerText = "myname"; password.InnerText = "123456";小技巧作用SetAttribute 设置下拉框,复选框,多选框数据下拉框:secret.SetAttribute("value", "question1"); 复选框rememberme.SetAttribute("Checked", "True"); 多选框cookietime.SetAttribute("checked", "checked");当然,在SetAttribute 之前,也可以用GetAttribute 取相关的属性先进行判断,再根椐需要进行设置。
delphi WebBrowser控件实现对IE浏览器的各种控制
delphiWebBrowser控件实现对IE浏览器的各种控制WebBrowser控件实现对IE浏览器的各种控制在不是js打开的页面上按window.close(),会有提示框,很烦,现在可以不用了,没有提示框直接关闭窗口。
试试下面代码:<object id="WebBrowser" width=0 height=0 classid="CLSID:8856F961_340A_11D0_A96B_00C04FD705A2"></object><input type="button" name="Button" value="关闭窗口" onClick="document.all.WebBrowser.ExecWB(45,1)">试着改变参数会得到其他一些功能:WebBrowser.ExecWB(1,1) 打开WebBrowser.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口WebBrowser.ExecWB(4,1) 保存网页WebBrowser.ExecWB(6,1) 打印WebBrowser.ExecWB(7,1) 打印预览WebBrowser.ExecWB(8,1) 打印页面设置WebBrowser.ExecWB(10,1) 查看页面属性WebBrowser.ExecWB(15,1) 好像是撤销,有待确认WebBrowser.ExecWB(17,1) 全选WebBrowser.ExecWB(22,1) 刷新WebBrowser.ExecWB(45,1) 关闭窗体无提示这些只对IE5.5以上版本有效,我是在IE6下测试的,通过的。
代码:--------------------------------------------------------------------------------■打开■<input name=Button onClick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>■另存为■<input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存为><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>■属性■<input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value=属性><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>■打印■<input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>■页面设置■<input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value=页面设置><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>■刷新■<input type=button value=刷新name=refresh onclick="window.location.reload()">■导入收藏■<input type="button" name="Button" value="导入收藏夹" onClick=window.external.ImportExportFavorites(true,);>■导出收藏■<input type="button" name="Button3" value="导出收藏夹" onClick=window.external.ImportExportFavorites(false,);>■加入收藏■<INPUT name=Button2 onclick="window.external.AddFavorite(location.href, document.title)" type=button value=加入收藏夹>■整理收藏夹■<INPUT name=Submit2 onclick="window.external.ShowBrowserUI(OrganizeFavorites, null)" type=button value=整理收藏夹>■查看原文件■<INPUT name=Button onclick=window.location = "view-source:" + window.location.href type=button value=查看源文件>■语言设置■<INPUT name=Button onclick="window.external.ShowBrowserUI(LanguageDialog, null)" type=button value=语言设置>■前进■<INPUT name=Submit onclick=history.go(1) type=submit value=前进>■后退■<INPUT name=Submit2 onclick=history.go(-1) type=submit value=后退>。
delphi twebbrowser的navigate方法
delphi twebbrowser的navigate方法Delphi TWebBrowser的Navigate方法简介在Delphi中,TWebBrowser控件提供了浏览网页的功能。
其中,Navigate方法是最常用的方法之一,用于导航到指定的网页。
方法参数Navigate方法的参数有如下几种:1.URL:指定要导航的网页地址,可以是完整的URL,也可以是相对路径。
2.Flags:指定如何打开网页,包括以下常用选项:–navNoHistory:不将导航记录添加到浏览器历史记录。
–navBrowserBar:如果导航失败,则尝试将URL传递给浏览器工具栏进行处理。
–navHyperlink:将URL视为一个超链接,而不是一个普通网页地址。
3.TargetFrameName:指定在哪个框架中显示网页内容,默认为”_self”,表示在当前框架中显示。
导航的常见用法以下是使用Navigate方法进行网页导航的几种常见用法:•导航到指定的URL:('•导航到相对路径的网页:('subfolder/');•导航到一个超链接:('mailto:', navHyperlink);导航的注意事项在使用Navigate方法导航网页时,需要注意以下几点:1.确保WebBrowser控件已经正确地创建和配置。
2.在导航前,可以通过检查WebBrowser控件的ReadyState属性来判断是否已经加载完毕。
3.可以通过WebBrowser控件的OnBeforeNavigate2事件来取消导航或修改导航的参数。
结论Delphi中的TWebBrowser控件的Navigate方法是一个非常方便和强大的功能,能够轻松实现网页导航的操作。
通过灵活运用其参数,开发者可以根据实际需求进行网页导航的控制和定制。
深入了解Navigate方法的更多功能导航到指定的URL使用Navigate方法最常见的用法就是导航到指定的URL,这个URL可以是完整的网页地址,比如”导航的常见选项Navigate方法的第二个参数Flags可以指定如何打开网页。
delphi中Webbrowser的使用技巧
WebBrowser组件和MSHTML 在Delphi 中的使用由于项目需要,近来研究了一下WebBrowser组件和MSHTML 在Delphi中的使用,整理了一下这段时间研究的结果,写下来一是方便大家查阅,二也可以加深我自己的记忆.希望能对大家有所帮助… …,同时,如果有更好的处理方式或者我没有提到的问题,请大家也告诉我哦, 咱们一块进步… ...,其中一部分是我从网络中搜集的资料,谢谢那些兄弟们… … MSHTML把HTML页面中的元素封装成了IHTMLInputElement、 IHTMLInputButtonElement、IHTMLInputTextElement、IHTMLTextAreaElement、IHTMLTitleElement、IHTMLFormElement 等等组件接口。
在程序中可以通过MSHTML提供的IHTMLDocument2接口得到整个Document对象,IHTMLElementCollection接口得到所有页面元素的集合,通过该接口的Item方法可以得到具体的某个组件,然后设置和读取该组件的属性值。
下面是一些常用功能的事例代码.1.打开某个页面:web.Navigate(ExtractFilePath(Application.ExeName) + 'Template/login.html'); 2.取出页面中某个HtmlElement的Value属性值:function GetValueByElementName(web: TWebBrowser; elementName: string; index: integer): string;beginresult := (((web.Document as IHTMLDocument2).body.all as IHTMLElementCollection).item(elementName, index) as IHTMLInputElement).valueend;3.给HtmlElement设置Value属性procedure SetValueTextAreaName(web: TWebBrowser; elementName, value: string;index: integer);begin(((web.Document as IHTMLDocument2).body.all asIHTMLElementCollection).item(elementName, index) as IHTMLTextAreaElement).value := value;end;4.判断页面执行结果是否成功因为Web应用中如果出错的一般是采用错误页面的方式呈现给最终用户,所以我们也无法抓到Http错误,只能通过在webBeforeNavigate2事件中将URL参数记录到全局变量中, 然后在webDocumentComplete事件中根据URL参数和全局变量中的URL参数来判断执行结果是否正确.当然,这样需要将页面地址编码到代码中,降低了灵活性,但是这也是我能想到的唯一的方法,如果大家有什么好的方法,请告诉我哦.5.屏蔽鼠标右键和某些快捷键本功能需要在webBrowser的窗口中加入ApplicationEvents组件,设置它的OnMessage事件代码如下即可.procedure TwebAdapterForm.ApplicationEvents1Message(var Msg: tagMSG;var Handled: Boolean);const_KeyPressMask = $80000000;begin//禁用右键with Msg dobeginif not IsChild(web.Handle, hWnd) then Exit;Handled := (message = WM_RBUTTONDOWN) or (message = WM_RBUTTONUP) or (message = WM_CONTEXTMENU);end;//禁止Ctrl + N//禁止Ctrl + F//禁止Ctrl + Aif Msg.message = WM_KEYDOWN thenbeginif ((Msg.lParam and _KeyPressMask) = 0) and(GetKeyState(VK_Control) <0) and ((Msg.wParam = Ord('N'))or (Msg.wParam = Ord('F')) or (Msg.wParam = Ord('A'))) thenbeginHandled := True;end;end;end;6.在页面关闭的时候,同时关掉包含页面的VCL Form.(仅限 InternetExplorer 6.0)本功能需要卸载掉Delphi自带的 WebBrowser组件,安装ActionX组件(Microsoft Internet Controls V1.1),而且以后的程序只能运行在安装有Internet Explorer 6.0 的环境下.具体方法如下:在WebBrowser组件的OnWindowClosing事件中,输入self.close; 代码即可.如果需要阻止窗口的关闭, 设置CanClose参数的值为Flase.7.如何将页面中超链接新开的页面窗口包到指定的VCL窗口中.procedure TForm1.webNewWindow2(Sender: TObject; var ppDisp: IDispatch;var Cancel: WordBool);varform : TForm1;beginform := TForm1.Create(nil);ppDisp := form.web.DefaultDispatch;form.Show;end;8.在WebBrowser加载html页面完成后,在页面顶端插入HTML代码, 下面两种方式斗可以.{1. ----------------------------------------------------------------} procedure TForm1.Button1Click(Sender: TObject);varRange: IHTMLTxtRange;beginRange := ((WebBrowser1.Document as IHTMLDocument2).body as IHTMLBodyElement).createTextRange;Range.collapse(False);Range.pasteHTML('<br/><b>Hello!</b>');end;{2. ----------------------------------------------------------------} procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;const pDisp: IDispatch; var URL: OleVariant);varWebDoc: HTMLDocument;WebBody: HTMLBody;beginWebDoc := WebBrowser1.Document as HTMLDocument;WebBody := WebDoc.body as HTMLBody;WebBody.insertAdjacentHTML('BeforeEnd', '<h1>Hello World!</h1>');end;9.将页面中显示的内容全部选中,然后粘贴到Word文档中.WebBrowser1.ExecWB(OLECMDID_SELECTALL, OLECMDEXECOPT_DODEFAULT);//全选网页WebBrowser1.ExecWB(OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT); //复制网页WordDocu.Range.Paste; //word文档粘贴WebBrowser1.ExecWB(OLECMDID_UNDO, OLECMDEXECOPT_DODEFAULT); //取消全选注:WebBrowser的Document属性值和WordDocument的Document属性值必须都不为nil. 10.如何解决网页不响应回车事件public{ Public declarations }procedure MsgHandle(var Msg :TMsg; var Handled :Boolean);end;varForm1: TForm1;FOleInPlaceActiveObject :IOleInPlaceActiveObject;implementation{$R *.DFM}procedure TForm1.MsgHandle(var Msg :TMsg; var Handled :Boolean);variOIPAO :IOleInPlaceActiveObject;Dispatch :IDispatch;beginif WebBrowser1 =nil thenbeginHandled :=False;Exit;end;Handled :=(IsDialogMessage(WebBrowser1.Handle, Msg) =True);if (Handled) and (not WebBrowser1.Busy) thenbeginif FOleInPlaceActiveObject =nil thenbeginDispatch :=WebBrowser1.Application;if Dispatch <>nil thenbeginDispatch.QueryInterface(IOleInPlaceActiveObject, iOIPAO);if iOIPAO <>nil thenFOleInPlaceActiveObject :=iOIPAO;end;end;end;if FOleInPlaceActiveObject <>nil thenif ((Msg.message =WM_KEYDOWN) or (Msg.Message =WM_KEYUP)) and ((Msg.wParam =VK_BACK) or (Msg.wParam =VK_LEFT) or (Msg.wParam =VK_RIGHT)) thenelseFOleInPlaceActiveObject.TranslateAccelerator(Msg);end;procedure TForm1.FormCreate(Sender: TObject);beginApplication.OnMessage :=MsgHandle;end;procedure TForm1.FormDestroy(Sender: TObject);beginFOleInPlaceActiveObject :=nil;end;11.如何在WebBrowser中调用当前页面中的javascript函数SayHello()WebBrowser1.OleObject.Document.parentWindow.execScript('SayHello()', 'javascript');//or(WebBrowser1.Document as IHTMLDocument2).parentWindow.execScript('SayHello()', 'javascript')//orwebrowser1.document.script.SayHello();delphi中Webbrowser的使用技巧1.获取网页中变量的值例如:htm中<script> var currIDS=123</script>程序中可以这样调用 id :=Form1.WebBrowser1.OleObject.Document.script.currIDS备注:变量可以是javascript定义的,也可以是vbscript定义的,如果Webbrowser1中找不到该变量,调用会触发一个异常事件,即变量currIDS不存在。
用Delphi控制IE窗口
用Delphi控制IE窗口
程序说明
本程序用于打开IE、链接到指定的网页、获取IE地址栏中的URL地址信息及该窗口名称、激活最近打开的窗口以及关闭最近打开的窗口。
程序的界面如图1:
设计思想
使用Delphi编程控制IE的方法有多种,在本程序中使用DDE来控制IE,应注意须先确保IE已经运行,因为此时IE要作为DDE服务器,用户的程序只能作DDE客户端,而DDE客户端无法与一个没有运行的服务器进行数据交换。
在本程序中调用API函数ShellExecute来打开IE。
图1
在本程序中使用DDE客户端时用到了类TDdeClientConv的以下几个函数及过程:
其中,参数Service为DDE服务器的ApplicationName,对IE来说就是Iexplore;参数Topic是DDE会话的TopicName,不同功能对应的Topic不同;参数Item为会话
的ItemName,也因功能不同而不同。
函数SetLink用来设置会话主题,若成功返回True,否则返回False;函数RequestData用来返回会话的数据。
设计步骤
新建一个应用程序,为窗体加入两个Edit组件、6个Button组件。
各组件属性如图2:
图2
在uses中加入对DDEman,ShellAPE和ComObj单元的引用,并定义一个TDdeClientConv类型的全局变量DDE。
编写相关代码。
Delphi开发嵌入式IE浏览器监控程序
引⾔ 随着络的发展和普及,对络的监控⽇益成为络安全的必然要求,也是管理和维护络的⼀个有效⼿段。
当前已经有多种应⽤⽐较⼴泛的络监控和过滤程序,如美萍管、we-blocker等,它们都可以实现基于络URL和IP地址的监控和过滤功能。
本⽂将对如何开发⼀个嵌⼊到IE浏览器中的监控程序进⾏介绍,该程序可以根据络URL和IP地址进⾏监控和过滤,并且记录系统⽇志,从⽽使你对IE(当然是使⽤它的⽤户)的所有操作⼀览⽆余。
相信通过阅读本⽂,会加深你对络监控程序的理解,以及提⾼你的COM编程能⼒和数据库编程能⼒。
本⽂在Delphi 6开发环境下实现,数据库使⽤桌⾯数据库Access 2000。
基础知识 编程 COM(Component Object Model,组建对象模型)是微软公司(Microsoft Company)提出的⼆进制通信规范,⽤于软件组件之间的跨越多个进程、机器、硬件和操作系统的互操作,它是⼀项通过接⼝(Interface)透明的传递封装数据的技术,并且独⽴于语⾔和操作平台。
⼀个COM对象是实现⼀个或者若⼲个接⼝的对象,即COM对象借助接⼝输出它所提供的服务。
2.IE浏览器的体系结构 IE浏览器的体系结构如图1所⽰。
其中MSHTML是位于SHDOCVW和HTML页⾯之间的COM对象,SHDOCVW对象⽤于处理页⾯的显⽰,⽽MSHTML⽤于处理页⾯的语法分析,并且将页⾯中的标记转换为元素。
MSHTML是⼀个COM服务器,允许COM客户端程序访问它对外提供的服务。
实现IE浏览器嵌⼊式编程的基本⽅法是建⽴COM对象,从⽽以COM客户端程序的形式和MSHTML COM服务器建⽴连接,然后通过接⼝回调实现需要的控制功能。
也即⾸先建⽴COM对象,实现系统规定的若⼲接⼝,然后注册COM对象,并且将COM对象的有关信息写⼊到IE浏览器扩展功能指定的注册表位置。
嵌⼊式IE浏览器监控程序的实现 嵌⼊式IE浏览器监控程序的实现主要包括监控程序的实现和维护程序的实现两部分,根据程序开发过程,可以将其分为四个步骤,下⾯分别对各个实现步骤进⾏详细介绍。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
WebBrowser 控件实现对 IE 浏览器的各种控制
在不是 js 打开的页面上按 window.close(),会有提示框,很烦,现在可以不用了,没有提示框直 接关闭窗口。
试试下面代码:
<object
id="WebBrowser"
■属性■ <input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value= 属 性 ><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> ■打印■ <input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value= 打 印 ><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> ■页面设置■ <input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value= 页 面 设 置 ><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> ■刷新■ <input type=button value=刷新 name=refresh onclick="window.location.reload()"> ■导入收藏■ <input type="button" name="Button" value=" 导 入 收 藏 夹 " onClick=window.external.Impt; ■导出收藏■ <input type="button" name="Button3" value=" 导 出 收 藏 夹 " onClick=window.external.ImportExportFavorites(false,);> ■加入收藏■ <INPUT name=Button2 onclick="window.external.AddFavorite(location.href, document.title)" type=button value=加入收藏夹> ■整理收藏夹■ <INPUT name=Submit2 onclick="window.external.ShowBrowserUI(OrganizeFavorites, null)" type=button value=整理收藏夹> ■查看原文件■ <INPUT name=Button onclick=window.location = "view-source:" + window.location.href type=button value=查看源文件> ■语言设置■ <INPUT name=Button onclick="window.external.ShowBrowserUI(LanguageDialog, null)" type=button value=语言设置> ■前进■ <INPUT name=Submit onclick=history.go(1) type=submit value=前进> ■后退■ <INPUT name=Submit2 onclick=history.go(-1) type=submit value=后退>
width=0
height=0
classid="CLSID:8856F961_340A_11D0_A96B_00C04FD705A2">
</object>
<input
type="button"
name="Button"
value=" 关 闭 窗 口 "
onClick="document.all.WebBrowser.ExecWB(45,1)">
试着改变参数会得到其他一些功能:
WebBrowser.ExecWB(1,1) 打开 WebBrowser.ExecWB(2,1) 关闭现在所有的 IE 窗口,并打开一个新窗口 WebBrowser.ExecWB(4,1) 保存网页 WebBrowser.ExecWB(6,1) 打印 WebBrowser.ExecWB(7,1) 打印预览 WebBrowser.ExecWB(8,1) 打印页面设置 WebBrowser.ExecWB(10,1) 查看页面属性 WebBrowser.ExecWB(15,1) 好像是撤销,有待确认 WebBrowser.ExecWB(17,1) 全选 WebBrowser.ExecWB(22,1) 刷新 WebBrowser.ExecWB(45,1) 关闭窗体无提示
这些只对 IE5.5 以上版本有效,我是在 IE6 下测试的,通过的。
代码:
--------------------------------------------------------------------------------
■打开■ <input name=Button onClick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开> <OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> ■另存为■ <input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value= 另 存 为 ><OBJECT classid=CLSID:8856F961_340A_11D0_A96B_00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>