delphi中 WebBrowser如何控制Frame下面的元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi中 WebBrowser如何控制Frame下面的元素相关的知识,希望对你有一定的参考价值。
参考技术A webbrowser1.oleobject.document.documentelement.document.frames.item(j).document.documentelement.innerhtml
可以取得取得指定Frame 中的HTML 内容
2:利用Delphi 的Olevariant 类型
单个frames 的输入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;
多个frames 的输入,FrameIndex 为Frame 的序号varo : Olevariant;begin
//找到登录用户名的输入框
o :=WebBrowser.oleobject.document.documentelement.document.frames.item(FrameInd
ex).document.all.item('LoginUserID',0);
o.value := 'TEST';
//找到登录密码的输入框o :=WebBrowser.oleobject.document.documentelement.document.frames.item(FramIndex).d
ocument.all.item('LoginPassword',0);
o.value := 'TEST'
//第一个表单提交
WebBrowser.oleobject.document.documentelement.document.frames.item(FramIndex).d
ocument.Forms.Item(0, 0).submit;
//或者用指定表单名称提交
o :=WebBrowser.oleobject.document.documentelement.document.frames.item(FramInde
x).document.all.item('Login',0);
o.Click; //点击操作,对其它对象也可同样操作end;
3:1、老外写的:本回答被提问者采纳
DELPHI中的webbrowser如何有效防止内存疏漏
根据网上给出的修改文件重新编译的办法可以有效减少,但仍然未能杜绝。我做的程序仍然是过一段时间就大量占用内存,烦死了。
有没有办法彻底解决这个问题?若是要控件解决,麻烦给个控件地址,谢谢。
我没怎么写代码,一般就是打开一个链接,然后用try
wb1.OleObject.document.all.item('DDDDD').innerText:=*******;excpet end;
这类的
或者自动刷新的页面。一刷新就占用多几k到几十K的内存,晕死哦
但占用内存多,那是没办法的。。除非你用底层的WINSOCK自己写个GET HTTP 参考技术A 没听说webbrowser会造成内存泄露啊,是不是你调用了它的接口又没释放呢?检查一下你的代码吧
例如:
finally
Element._Release
end;
以上是关于delphi中 WebBrowser如何控制Frame下面的元素的主要内容,如果未能解决你的问题,请参考以下文章
delphi中的webbrowser ,如何获取网站返回状态码
delphi webbrowser,如何调整webbrowser里面打开网页的大小,或者使打开的内容适应webbrowser控件的大小。
DELPHI 如何获得 Webbrowser 浏览文件夹 选中的文件路径