怎样模拟鼠标点击网页中的button?(就剩这点分了)(40分)

  • 主题发起人 主题发起人 chenboby
  • 开始时间 开始时间
C

chenboby

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样模拟鼠标点击网页中的button?我已经知道怎样填入帐号和密码了。在线等。
 
帮帮忙,我后天就要交毕业设计的程序了。

up
 
如果你使用webbrower则可以
if a.tagname=buttonname
then a.click;
 
我有一个模拟鼠标点击的程序,在WIN98、D6下调试通过了。不过程序在单位,
明天中午我带回来,你给我来个EMIAL:b5790930@pub.xz.jsinfo.net
 
dhl2001能写得再详细些吗?a.click我怎么都没用上,能再给点提示吗?
truecat大虾,您现在在吗?我可是一大早就来这等您了。救命呀~~~~~~
 
我找到了vb的程序,可是这种方式好像在delphi中不能用。程序如下:(有谁能把它翻译成delphi的吗?)
Private Sub Command1_Click()
Dim vDoc, vTag
Dim i As Integer

Set vDoc = WebBrowser1.Document
For i = 0 To vDoc.All.length - 1 '检测所有标签
If UCase(vDoc.All(i).tagName) = "INPUT" Then '找到input标签
Set vTag = vDoc.All(i)
If vTag.Type = "text" Or vTag.Type = "password" Then '看看是不是我们需要的
Select Case vTag.Name '按标签的名字,对号操做
Case "EMAILADD"
vTag.Value = "myemail@home.com" '这里写入你的e-mail
Case "PASSWD"
vTag.Value = "password" '这里写入你的密码
End Select
ElseIf vTag.Type = "submit" And vTag.Name = "SUB" And vTag.Value
= "订阅" Then
'找到提交按钮
vTag.Select '也可以没有这个
vTag.Click '点击提交了,一切都OK了
End If
End If
Next i
End Sub
Private Sub Form_Load()
WebBrowser1.Navigate "http://dhunter.51.net"
End Sub
 
我们老师终于还是说不过我,又放了我几天,问题还是没有解决,请大家再帮帮我吧!
 
你的意思不象是用DELPHI写程序来点击网页上的BUTTON,而是写JAVASCRIPT来模拟FORM的提交
动做,是吗?
 
不,当然是用delphi,要是用javascript的话早就搞定了,我现在还是没有找到delphi中.click的方法。
 
在delphi中使用有关鼠标动作的api函数来模拟鼠标移动、点击:
setcursorpos(x1,y1);
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,GetMessageExtraInfo());
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,GetMessageExtraInfo ());
不过这个方法需要你知道点击的位置的屏幕坐标
而如何截取你需要的button当前的屏幕坐标,这个我不知道,请高手指教。
 
不好意思,我忘了说明了,我的程序中是看不到webbrowser的,这样就只能通过IE的接口来访问button了,
我找遍了button的属性,就是没找到它的click。
 
var
o : Olevariant;
begin
o := 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; //第一个表单提交
end;
为什么这段程序在我这不能用?我试了一下,在OleObject后面没有找到document.all.item();这些
这是为什么呀?需要其他什么设置吗?
如果有人能答的话,请说得详细些好吗?
先谢过了!
 
多人接受答案了。
 
后退
顶部