找回密码
 加入
搜索
查看: 6289|回复: 15

[AU3基础] 关于点击控件的问题

 火.. [复制链接]
发表于 2011-6-9 22:02:06 | 显示全部楼层 |阅读模式
本帖最后由 82035935 于 2011-6-9 23:00 编辑

最近看到了个屏蔽弹窗的程序,觉得很实用,就想用AU3做个自动启动的脚本,但遇到了问题,
$g_szVersion = "自动启动"
If WinExists($g_szVersion) Then Exit
AutoItWinSetTitle($g_szVersion)

Run("屏蔽弹窗.exe")
WinwaitActive("提醒","本程序可能会使浏览器打不开,使用前请保存您的网页")
Send("{Enter}")

WinWaitActive("一键屏蔽弹窗广告")
ControlClick("一键屏蔽弹窗广告", "一键屏蔽弹窗广告", "[CLASS:ThunderRT6UserControlDC; INSTANCE:1]","left","1","60","25")
鼠标没法点击到控件 图片中的“一键屏蔽外挂广告”按钮,试了很多控件ID都不行,出现这样的情况应该用什么函数呢?求解~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2011-6-9 22:35:59 | 显示全部楼层
试试这个函数
_GUICtrlButton_SetCheck
发表于 2011-6-9 22:58:23 | 显示全部楼层
上传软件是王道~~
 楼主| 发表于 2011-6-9 23:01:01 | 显示全部楼层
_GUICtrlButton_SetCheck 这个函数怎么用哦?百度一把没发现·
发表于 2011-6-9 23:16:29 | 显示全部楼层
#Include <GuiButton.au3>
$g_szVersion = "自动启动"
If WinExists($g_szVersion) Then Exit
AutoItWinSetTitle($g_szVersion)
Run("屏蔽弹窗.exe")
WinwaitActive("提醒","本程序可能会使浏览器打不开,使用前请保存您的网页")
Send("{Enter}")
WinWaitActive("一键屏蔽弹窗广告")
_GUICtrlButton_SetCheck("[CLASS:ThunderRT6UserControlDC; INSTANCE:1]", 0x2)
 楼主| 发表于 2011-6-9 23:48:26 | 显示全部楼层
回复 5# 502762378

没有效果,执行到第七行 后面就没有效果了
发表于 2011-6-10 00:42:13 | 显示全部楼层
你可以用论坛里面找一个可以获取到控件的软件
发表于 2011-6-10 07:42:38 | 显示全部楼层
回复 1# 82035935


这个软件是什么软件?有没有下载地址,是用什么编写的?
发表于 2011-6-10 08:34:51 | 显示全部楼层
_GUICtrlButton_SetCheck has no effect on push buttons.
AutoIt Help有解释的
发表于 2011-6-10 08:49:01 | 显示全部楼层
没有试过你说的程序,仅仅从你传的图片和你写的脚本来看:
ControlClick("一键屏蔽弹窗广告", "一键屏蔽弹窗广告", "[CLASS:ThunderRT6UserControlDC; INSTANCE:1]","left","1","60","25")
第二个参数,你的图片是“外挂广告”;
最后两个参数,这个坐标值你是怎么得来的?
发表于 2011-6-10 10:03:28 | 显示全部楼层
回复 1# 82035935


  试了一下,的确有些麻烦,不过看了你自己的代码,幸好你并不介意前台点击,所以写了下面的,测试可行

$title= "一键屏蔽弹窗广告"
If WinExists($title) Then Exit
AutoItWinSetTitle($title)
Run("屏蔽弹窗.exe")
WinwaitActive("提醒","本程序可能会使浏览器打不开,使用前请保存您的网页")
Send("{Enter}")
$pos=WinGetPos($title)
WinSetOnTop($title,'',1)
WinActivate($title)
WinWaitActive($title)
MouseClick('left',$pos[0]+70,$pos[1]+160,1,1)
发表于 2011-6-10 10:06:25 | 显示全部楼层
回复 9# nwf2011


    对,这个是设置单选按钮或复选框的选取状态,不是用来点击按钮的~
发表于 2011-6-10 10:27:58 | 显示全部楼层
回复 1# 82035935


        丫,还真看错了, 还以为是要复选图中焦点的复选框,实在不好意思
 楼主| 发表于 2011-6-10 12:39:31 | 显示全部楼层
回复 11# annybaby

非常感谢啊,测试一下,完全没问题,呵呵,前台后台的无所谓,主要就是用来屏蔽网页广告的,恕小弟愚钝,最后一行代码理解不了,可以解释一下吗?谢谢了~
发表于 2011-6-10 16:17:33 | 显示全部楼层
回复 14# 82035935


    呃,那句很简单吧,就是鼠标点击啊,看帮助

MouseClick('left',$pos[0]+70,$pos[1]+160,1,1)

你应该是$pos[0]+70,$pos[1]+160不明白吧?

$pos是由前面的wingetpos()函数返回的一个包含了窗体位置坐标的数组,$pos[0]是X坐标,$pos[1]是Y坐标,后面的两个数70和160是你想点击的位置相对于窗体左上角的坐标,你可以通过信息窗体工具获取你想要的坐标相关信息~~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-20 06:25 , Processed in 0.087986 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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