找回密码
 加入
搜索
查看: 7780|回复: 11

[系统综合] MouseClick点击问题

 火.. [复制链接]
发表于 2012-5-7 00:48:50 | 显示全部楼层 |阅读模式
悬赏100金钱已解决
本帖最后由 tryhi 于 2012-5-7 00:57 编辑

HotKeySet('{enter}','a')
Sleep(10000000)
Func a()
        $xy = MouseGetPos();获取鼠标当前位置
        MouseClick('left',30,30,1,0);快速点击
        MouseMove($xy[0],$xy[1],0);快速回来原来位置
EndFunc


该代码为按一下ENTER之后点击屏幕30,30位置,也就是第一个桌面图标的位置,测试发现,如果鼠标焦点在explorer窗口(例如焦点在桌面)上面,或者30,30那个位置上方没有其他程序的窗口,就会出现失效的情况,不知为什么会这样,焦点不在其他程序窗口上时会出现不会移过去点击,而30,30位置上方如果没有别的窗口时就会出现点击了之后又不回来,百思不得其解。
测试系统为XP SP3

最佳答案

查看完整内容

回复 1# tryhi 我以前也遇到过,但不知道为什么后来就好了. 也许是autoit版本问题,换个版本试试.
发表于 2012-5-7 00:48:51 | 显示全部楼层
回复 1# tryhi

我以前也遇到过,但不知道为什么后来就好了.
也许是autoit版本问题,换个版本试试.

评分

参与人数 1金钱 +20 贡献 +20 收起 理由
tryhi + 20 + 20 换了3.3.9.0没问题了

查看全部评分

发表于 2012-5-7 00:54:33 | 显示全部楼层
经测试正常,xp系统

评分

参与人数 1金钱 +20 贡献 +2 收起 理由
tryhi + 20 + 2 这就奇怪了……

查看全部评分

 楼主| 发表于 2012-5-7 00:59:10 | 显示全部楼层
经测试正常,xp系统
haijie1223 发表于 2012-5-7 00:54



    奇怪,难道我电脑有问题,明天换几台电脑测试下。。。
发表于 2012-5-7 01:15:51 | 显示全部楼层
回复 1# tryhi


    我帮你试了两次,没有发现你说的问题!

你试一下换个系统主题测试下

另外这个函数是调用API里的mouse_event函数来实现的,但mouse_event已经被微软弃了,你可以DLLcall一下同样功能的API里的新函数SendInput:它有返回值,还可以得到GetLastError,可以帮你分析错误原因

评分

参与人数 1金钱 +30 收起 理由
tryhi + 30 多谢

查看全部评分

发表于 2012-5-7 07:23:50 | 显示全部楼层
貌似除了回原始位置快了点没发现问题

评分

参与人数 1金钱 +20 收起 理由
tryhi + 20 多谢测试

查看全部评分

 楼主| 发表于 2012-5-7 08:52:11 | 显示全部楼层
貌似除了回原始位置快了点没发现问题
netegg 发表于 2012-5-7 07:23


奇怪,就是我用这样子,也是有同样的问题
HotKeySet('{enter}','a')
Sleep(10000000)
Func a()
        $xy = MouseGetPos()
        MouseClick('left',30,30,1)
        Sleep(200)
        MouseMove($xy[0],$xy[1])
EndFunc

评分

参与人数 1金钱 +100 收起 理由
18997 + 100

查看全部评分

发表于 2012-5-7 09:11:22 | 显示全部楼层
sleep(200)?0.2秒?你试试用2000

评分

参与人数 1金钱 +20 收起 理由
tryhi + 20 多少秒都是一样

查看全部评分

发表于 2012-5-7 10:55:36 | 显示全部楼层
本帖最后由 魔导 于 2012-5-7 10:57 编辑

前辈   这个有点邪  小弟曾经遇到过,多点几下  过去了
不知道是什么原因,
HotKeySet('{enter}','a')
Sleep(10000000)
Func a()
        $xy = MouseGetPos();获取鼠标当前位置
        MouseClick('left',30,30,4,0);快速点击
        MouseMove($xy[0],$xy[1]);快速回来原来位置
EndFunc

评分

参与人数 1金钱 +20 收起 理由
tryhi + 20

查看全部评分

发表于 2012-5-7 13:02:32 | 显示全部楼层
回复 1# tryhi
我测试也没有问题,系统是xp sp3.

评分

参与人数 1金钱 +20 收起 理由
tryhi + 20

查看全部评分

发表于 2012-5-8 16:11:12 | 显示全部楼层
该代码为按一下ENTER之后点击屏幕30,30位置,也就是第一个桌面图标的位置,测试发现,如果鼠标焦点在ex ...
tryhi 发表于 2012-5-7 00:48


从哪里有已解决的分类,每次我都是手打的已解决

评分

参与人数 1金钱 +30 收起 理由
tryhi + 30 改已解决之后A版会移动到已解决区

查看全部评分

 楼主| 发表于 2012-5-8 21:08:11 | 显示全部楼层
从哪里有已解决的分类,每次我都是手打的已解决
iori2882 发表于 2012-5-8 16:11



    悬赏贴会自动改,普通帖要自己改

评分

参与人数 1金钱 +30 贡献 +1 收起 理由
iori2882 + 30 + 1

查看全部评分

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-10 17:26 , Processed in 0.081963 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表