ppzpph 发表于 2012-10-18 08:02:48

[已解决]关于ControlClick偶尔无效的问题

本帖最后由 ppzpph 于 2013-1-4 09:38 编辑

首先,请各位大侠原谅,我真没有把咱们论坛的帖子看完,也没有具体搜索。我上班时间没有外网,我写程序都是爱好,业余时间写和研究的。
好的,开始我的问题:使用ControlClick的时候之前没有我就一直看着程序的运行,没有动鼠标所以程序运行顺畅。但是有一次我无意动了一下鼠标,程序就不再往下进行了。使用Msgbox调试多次,发现是在ControlClick时出现的问题。一开始我怀疑是窗体和按钮获取错误,所以在停止运行的时候,我使用彗星查看了一下窗体和按钮的信息,跟之前一样没有问题。求解答这是为什么?
也曾尝试过禁止鼠标,但是害的我重启。所以我不得不使用MouseClick来运行程序。

xiehuahere 发表于 2012-10-18 09:48:53

本帖最后由 xiehuahere 于 2012-10-18 09:56 编辑

ControlClick之前有用WinActivate吗?
建议每次ControlClick之前都用一下。否则会有失败概率的。

Func _MyClick("窗口标题", 控件id)
   If Not WinActive("窗口标题") Then WinActivate("窗口标题")
    ControlClick("窗口标题", "", 控件id)
EndFunc

有些程序在鼠标移动到其界面上后会自动激活自身(如有道词典迷你悬浮窗),导致你的应用程序被去激活。

ppzpph 发表于 2012-10-18 15:34:38

回复 2# xiehuahere

WinActive做了,我再具体描述一下,看看是不是特例什么的。是IE8的弹出下载的对话框。

xiehuahere 发表于 2012-10-18 15:52:30

回复 3# ppzpph


    没看到代码,不知道你做得对还是不对。
是WinActivate 不是WinActive

annybaby 发表于 2012-10-18 16:56:09

回复 3# ppzpph

IE下载框需要sleep一下(约260毫秒左右,论坛有一个帖子说到这个的,你搜索一下)

ghl781258 发表于 2012-10-18 22:09:28

代码贴上啊,具体问题具体分析啊

ppzpph 发表于 2012-10-19 10:58:14

回复 5# annybaby
没有搜索到,但是我可以先试试,目前用MouseClick解决了,还好我这个软件不需要在别的电脑运行只是在我自己的电脑上运行。

ppzpph 发表于 2012-10-19 11:01:04

回复 4# xiehuahere

我是使用的WinActivate,我看过帮助文件这两个区别,特意留心了一下。我回头试试annybaby的方法。谢谢!{:face (59):}

ppzpph 发表于 2012-10-19 11:03:13

回复 6# ghl781258

代码在办公机上,不方便,其他的地方没有问题,就是在点击按钮的语句上有问题,现在已经将ControlClick换成Mouseclick了,一切正常了。

ppzpph 发表于 2012-10-19 11:08:09

回复 5# annybaby


    弱弱的问一下,我怎么不能把这个帖子改成已解决呢?没有这个分类啊!

annybaby 发表于 2012-10-19 14:35:32

回复 10# ppzpph

直接编辑主帖标题,在最前面或者最后面加上[已解决]就行了,论坛会自动移动到已解决问题区

;IE下载框点击保存
$title='文件下载 - 安全警告'
WinActivate($title,'')
Sleep(300)
ControlClick($title,'','')

龙星 发表于 2018-3-25 20:19:42

ControlClick 这破玩意经常不好用
页: [1]
查看完整版本: [已解决]关于ControlClick偶尔无效的问题