这样吧
如果说网页里面的button位置不变化的时候
,你考虑看看先找到ie的窗口
然后算出需要点击的位置和窗口的相对距离
mousemove了再点击
可以解决问题么?(呵呵,不用用怪怪的眼神看我,我是newbie)
如果说网页里面的button位置不变化的时候
,你考虑看看先找到ie的窗口
然后算出需要点击的位置和窗口的相对距离
mousemove了再点击
可以解决问题么?(呵呵,不用用怪怪的眼神看我,我是newbie)
解决方案 »
- 封装问题 以及 复制子类 问题 思考良久.....
- 请问怎样在程序运行是动态添加ActionManager里面的Action啊~
- delphi程序在运行时出现Record/key deleted错误,是什么原因导致的呢》该如何解决?
- 请问谁有《Delphi5开发人员指南》的CD源代码,高分相赠
- 关于日期间隔的计算!
- shadowfish(小鱼)进来拿分吧,刚才忘记了给你分。
- 程序为什么会出现错误:"将截断字符串或二进制数据"?急!!!!!
- 用CreateRectRgn创建了一个区域后如何偏移它?????急!!!!
- 看看有关驱动器加密的代码?
- 请大神帮忙编辑一个彩票程序
- 关于Express SideBar添加item的问题
- 问个在Delphi里关于Socket的问题,别嫌弱啊
然后用findwindowsex来根据该IE窗口的句柄来查询名称为"确定"的那个button的句柄,最后用sendmessage来发送鼠标的双击事件来就行了,这是我知道的唯一方法,不好意思了
用spy++我没试过,待我试看看。
上面的思路肯定是对的,我也成功实现过。要是你还不会可以给我来信:[email protected]
我查过msdn,上面有ihtmlbuttonelement,它有click,但我不知道怎样去调用它,请大家帮帮忙。程序如下:
var
doc : IHTMLDocument2;
all : IHTMLElementCollection;
len,i : integer;
item : OleVariant;
HtmlInputEle : IHTMLInputElement;
SubmitBtn : IHTMLButtonElement;
spDisp : IDispatch;
begin
if WebBrowser1.Document <> nil then
begin
doc:=WebBrowser1.Document as IHTMLDocument2;
all:=doc.all;
len:=all.Length;
for i:=0 to len-1 do
begin
spDisp:=all.item(i,varEmpty);
if SUCCEEDED(spDisp.QueryInterface(IHTMLInputElement ,HtmlInputEle)) then
begin
if HTMlInputEle.name = 'UserID' then
HtmlInputEle.value := 'test';
if HTMlInputEle.name = 'Passwd' then
HtmlInputEle.value := 'test';
end;
if SUCCEEDED(spDisp.QueryInterface(IHTMLButtonElement ,SubmitBtn)) then
if SubmitBtn.name = 'submitButtonName' then
SubmitBtn.click();
end;
end;
end;这样做的话,它会提示click没有定义。
建议你用SPY++监视这个网页,记录下你点击按钮前、中、后系统、程序发送的所有消息(在一、两秒钟内就会有几十几百条),然后对照着MSDN查,不放过每一条可能的消息。