是否有可能控制点击与像素搜索一起工作在autohotkey?

问题描述:

我无法控制点击我试图模拟控制点击而没有移动鼠标,但我总是得到错误,当我运行有我的代码中有错误。是否有可能控制点击与像素搜索一起工作在autohotkey?

PixelSearch, X, Y, 0, 0, 1292, 747, 0x00FF00, 0, fast 
     if(ErrorLevel=0) 
     sleep, 100 
     ControlClick, %X% %Y%, form1, Left, 1 

有几件事你错过了。

首先,If Statements只执行它们下面的行。如果你有超过1行的代码,你必须把它放在大括号中。它叫A Block/Blocking (Multiple Lines of Code Inside Braces)

其次,你的ControlClick语法是错误的。如果你传递坐标,你必须把x和y放在它们的前面,这样controlclick就知道它们是坐标。

错误:
ControlClick, %X% %Y%

正确:
ControlClick, x%X% x%Y%

第三,如果你看一下你的代码,你有Left其中WinText应该是。
语法ControlClick
ControlClick [, Control-or-Position, WinTitle, WinText , WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText]

你不能假设AHK知道Left是按钮。您必须通过在其中输入逗号来指示它跳过该字段以指示该字段为空。这样它就知道跳过wintext并将012作为WhichButton字段。

错误:
ControlClick, %X% %Y%, form1, Left

正确:
ControlClick, %X% %Y%, form1,, Left

把它放在一起,你有这样的:

PixelSearch, X, Y, 0, 0, 1292, 747, 0x00FF00, 0, fast 
    if (ErrorLevel = 0){ 
     Sleep, 100 
     ControlClick, x%X% y%Y%, form1, , Left, 1 
    } 

让我知道是否能解决你的问题。

编辑:显然这并没有解决你的问题。我打赌你的controlclick和你通过它的信息是问题。

确保您在脚本的开头定义CoordMode。您需要将其设置为全屏或相对。

接下来,除非有充分理由,否则请不要使用窗口的标题WinTitle。而不是form1,请使用ahk_exe chrome.exe之类的东西。它更可靠。

#SingleInstance, Force 
CoordMode, Pixel, Screen 
return 

F1:: 
    PixelSearch, X, Y, 0, 0, 1292, 747, 0x00FF00, 0, fast 
    if (ErrorLevel = 0){ 
     Sleep, 100 
     ControlClick, x%X% y%Y%, ahk_exe yourExeName.exe, , Left, 1 
    } 
return 

什么程序/网站/游戏使用此?

+0

谢谢你,但它不会点击像素搜索的xy坐标..它只是点击我当前的鼠标位置:( –