VBS单击位置

时间:2011-03-11 01:57:46

标签: vbscript

有没有办法让VBScript点击屏幕的确切位置,如(10,100)或沿着这些线条点击?或者也许点击文本框?

3 个答案:

答案 0 :(得分:5)

VBScript本身并不知道桌面或任何其他窗口。但是,通过使用各种COM / ActiveX对象,您可以与其他进程和窗口进行交互。例如,您可以create a shortcut on the desktopstart a programautomate a series of keystrokesforce a program to come to the front

就自动鼠标移动或鼠标点击而言,您可能需要编写自己的COM对象来执行此操作。 SetCursorPosSendInput API调用的组合可以实现此目的。

Google Answers有一些example C++ code可以实现此目的。 行星源代码有一些example VB6 code可以实现这一点。

从那里,您可以创建COM / ActiveX对象,以允许您使用VBScript单击所需的位置。

答案 1 :(得分:3)

这将移动光标:

Option Explicit
Dim Excel, x, y

Set Excel = WScript.CreateObject("Excel.Application")

x = "500"
y = "222"
Excel.ExecuteExcel4Macro ( _
    "CALL(""user32"",""SetCursorPos"",""JJJ""," & x & "," & y & ")")

WScript.Sleep (100)
WScript.Echo "Program Ended"

答案 2 :(得分:0)

以下代码可用于将鼠标移动到x,y coords 100,100

Set DeviceReplay = CreateObject("Mercury.DeviceReplay")

DeviceReplay.MouseMove 100,100