MouseClick点击问题
本帖最后由 tryhi 于 2012-5-7 00:57 编辑HotKeySet('{enter}','a')
Sleep(10000000)
Func a()
$xy = MouseGetPos();获取鼠标当前位置
MouseClick('left',30,30,1,0);快速点击
MouseMove($xy,$xy,0);快速回来原来位置
EndFunc
该代码为按一下ENTER之后点击屏幕30,30位置,也就是第一个桌面图标的位置,测试发现,如果鼠标焦点在explorer窗口(例如焦点在桌面)上面,或者30,30那个位置上方没有其他程序的窗口,就会出现失效的情况,不知为什么会这样,焦点不在其他程序窗口上时会出现不会移过去点击,而30,30位置上方如果没有别的窗口时就会出现点击了之后又不回来,百思不得其解。
测试系统为XP SP3 回复 1# tryhi
我以前也遇到过,但不知道为什么后来就好了.
也许是autoit版本问题,换个版本试试. 经测试正常,xp系统 经测试正常,xp系统
haijie1223 发表于 2012-5-7 00:54 http://www.autoitx.com/images/common/back.gif
奇怪,难道我电脑有问题,明天换几台电脑测试下。。。 回复 1# tryhi
我帮你试了两次,没有发现你说的问题!
你试一下换个系统主题测试下
另外这个函数是调用API里的mouse_event函数来实现的,但mouse_event已经被微软弃了,你可以DLLcall一下同样功能的API里的新函数SendInput:它有返回值,还可以得到GetLastError,可以帮你分析错误原因 貌似除了回原始位置快了点没发现问题 貌似除了回原始位置快了点没发现问题
netegg 发表于 2012-5-7 07:23 http://www.autoitx.com/images/common/back.gif
奇怪,就是我用这样子,也是有同样的问题HotKeySet('{enter}','a')
Sleep(10000000)
Func a()
$xy = MouseGetPos()
MouseClick('left',30,30,1)
Sleep(200)
MouseMove($xy,$xy)
EndFunc sleep(200)?0.2秒?你试试用2000 本帖最后由 魔导 于 2012-5-7 10:57 编辑
前辈 这个有点邪小弟曾经遇到过,多点几下过去了
不知道是什么原因,
HotKeySet('{enter}','a')
Sleep(10000000)
Func a()
$xy = MouseGetPos();获取鼠标当前位置
MouseClick('left',30,30,4,0);快速点击
MouseMove($xy,$xy);快速回来原来位置
EndFunc 回复 1# tryhi
我测试也没有问题,系统是xp sp3. 该代码为按一下ENTER之后点击屏幕30,30位置,也就是第一个桌面图标的位置,测试发现,如果鼠标焦点在ex ...
tryhi 发表于 2012-5-7 00:48 http://www.autoitx.com/images/common/back.gif
从哪里有已解决的分类,每次我都是手打的已解决 从哪里有已解决的分类,每次我都是手打的已解决
iori2882 发表于 2012-5-8 16:11 http://www.autoitx.com/images/common/back.gif
悬赏贴会自动改,普通帖要自己改
页:
[1]