看到这个“开始”按钮,就点击,如何实现?谢谢(已解决)
本帖最后由 creativewwz 于 2011-4-16 10:30 编辑MouseClick("left",418,534,1) 占个沙发,等待高手学习一下 传送门
http://www.autoitx.com/forum.php?mod=viewthread&tid=5720&highlight=%D5%D2%CD%BC
找图、找色的UDF 可以使用截图函数_ScreenCapture_Capture,把窗口按钮哪块区域截下来,事先也截一块同位置有按钮时的图片
再使用FileRead(图片文件)
如果FileRead(有按钮时的图片) == FileRead(当前刚截取的图片),则说明按钮出现了
以上方法我在别的用途验证过确实可行的。但楼主一点代码都不给,从零写起有点懒,而且我都不玩哪个游戏的。 谢谢 好方法 不是我不写 问题是我一点都不会写. 我只会鼠标点击函数 您的这个主意太好
了 我要加强学习 可以试试挂个钩子上去 可以试试挂个钩子上去
netegg 发表于 2011-4-9 07:19 http://www.autoitx.com/images/common/back.gif
谢谢!怎么挂啊?不懂啊,能给个提示吗? 谢谢大家啦 ControlClick("斗地主角色版","","","left",1,418,534)
可以参考这个,但是我没有安装这个游戏,无法亲自测试。从图上也看不出你探测的是哪里,所以不一定能用,如有可能请提供完整信息。 谢谢,我试试 试过了不行,谢谢! 本帖最后由 小A 于 2011-4-10 17:53 编辑
以下代码经测试完全可行!DLL文件:
FileInstall("QMDispatch.dll", @SystemDir & "\QMDispatch.dll")
FileInstall("helper.dll", @SystemDir & "\helper.dll")
FileInstall("WinIo.dll", @SystemDir & "\WinIo.dll")
RunWait("Regsvr32 /s " & @SystemDir & "\QMDispatch.dll")
$obj = ObjCreate("QMDispatch.QMFunction")
;循环查找图片
While 1
$pos = _FindPic(1, 1, @DesktopWidth, @DesktopHeight, @ScriptDir & "\start.bmp", 1)
If $pos > 0 Or $pos > 0 Then ;如果$pos > 0 与 $pos > 0 说明找到图片.
MouseClick('left',$pos + 40 ,$pos + 10,1,0);发送鼠标点击
EndIf
Sleep(800)
WEnd
Func _FindPic($iLeft, $iTop, $iRight, $iBottom, $szFileName, $fSimilar)
Dim $pos
$foundpixel = $obj.FindPic($iLeft, $iTop, $iRight, $iBottom, $szFileName, $fSimilar)
$pos = Int($foundpixel / 8192)
$pos = Mod($foundpixel, 8192)
Return $pos
EndFunc ;==>_FindPic
不好意思写了一个只支持1024*768 和 1366*768两种分辨率 小弟研究数日,发贴无数,一直无果,想不到二位大哥,这么容易就给解决啦,小弟真是佩服得无体投地!!太谢谢啦{:face (301):} 本帖最后由 creativewwz 于 2011-4-14 07:12 编辑
是普通版的斗地主 不是欢乐的斗地主