ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: gqy7979948

[求助] 求教一个可能与VBA无关的语言或者程序方面的问题

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-21 16:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
原帖由 kevinchengcw 于 2010-3-21 16:00 发表
要是想用AU3来做的话,到这里试一下
http://www.autoitx.com/

或者试一下下面这段

hotkeyset("^{down}","Terminate")
msgbox(0,"工作提示","切换后5秒钟后开始自动点击,确定后将鼠标移到要点的按钮上" & @cr ...



非常感谢。我刚刚从网上下载了一个autoit,把你的代码复制进去开始使用,效果很好。当鼠标只反复点击一个按钮时,这个代码能完全满足要求。
如果我要求鼠标先后反复交替点击两个按钮(这两个按钮是先出来一个,点击以后又出来第二个,再点击以后重新出现第一个,两个按钮是在两个页面上,物理位置也不一定是重合的,这样的情况下能解决吗?
另外,<Ctrl+Down>是哪两个键?是Ctrl+PAGEDown吗?
再一次表示感谢!

TA的精华主题

TA的得分主题

发表于 2010-3-21 16:49 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
down是方向键的向下键,如果你能找到那两个键的坐标的话就很简单,两次加上坐标就行了,其实如果第二个窗口支持按键,比如回车的话,再发一个回车就行了

TA的精华主题

TA的得分主题

发表于 2010-3-21 16:53 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
hotkeyset("^{down}","Terminate")
msgbox(0,"工作提示","切换后5秒钟后开始自动点击,确定后将鼠标移到要点的按钮上" & @crlf & "中途要退出请按<Ctrl+Down>,请注意时间")
sleep(5000)
while 1
mouseclick("left")
sleep(100)
send("{enter}")
sleep(100)
wend

func Terminate()
        msgbox(0,"提示","退出程序",5)
        hotkeyset("^{down}")
        exit 0
endfunc

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-21 17:07 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

回复 13楼 kevinchengcw 的帖子

模拟鼠标点击(按钮等)控件
既然是模拟用户操作,自然就包括了模拟鼠标点击在内。
适用命令/函数:Click/MouseClick/ControlClick
其 中Click/MouseClick用来模拟用户的物理操作(点击),把鼠标点击事件发送到指定坐标位置(相对当前窗口或绝对位置)上,但这种方法并不能 保证100%的准确性,屏幕分辨率、用户干扰和系统环境等都会影响到它们的执行结果,而ControlClick则直接把鼠标点击事件发送到目标窗口的目 标控件上,因而更准确,一般我们不考虑使用坐标位置方式的点击,下面仅以ControlClick为例说明:
AHK:
ControlClick [, 目标控件或坐标位置, 窗口标题, 窗口文本, 鼠标按钮, 点击次数, 选项,排除标题, 排除文本]
AU3:
ControlClick ( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] )
对AHK而言,“目标控件”参数是指要点击的控件的类别名(ClassNN)或控件文本,另外还可以使用控件句柄(若用的是控件句柄则第一个参数需留空,并在第二个参数中使用ahk_id %控件句柄%)。

Q:用什么工具来获得目标控件的这些信息呢?
A:AHK用户请使用 AutoIt3 Window Spy,AU3用户则请使用AutoIt Window Info,你可以在相应的开始菜单项目里找到它们,或者到安装目录下寻找。

Q:如何使用这两个工具?
A:先打开你要进行操作的目标窗口,然后运行 AutoIt3 Window Spy 或 AutoIt Window Info,接下来就是把鼠标移到目标控件上(比如某个按钮):



以上内容是我在网上搜索到的一个模拟鼠标点击按钮的文章。对于
ControlClick ( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] )中的参数我不懂怎样用(我已经打开了AutoIt Window Info,并获得了一些信息,但不知道具体应该把哪些参数分别填入( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] )中。

TA的精华主题

TA的得分主题

发表于 2010-3-21 17:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 gqy7979948 于 2010-3-21 16:31 发表

非常感谢这位朋友的热心帮助。

直接编译成了执行文件,用起来更方便。

自动点击按钮.rar

7.09 KB, 下载次数: 53

TA的精华主题

TA的得分主题

发表于 2010-3-21 17:22 | 显示全部楼层
原帖由 gqy7979948 于 2010-3-21 17:07 发表
模拟鼠标点击(按钮等)控件
既然是模拟用户操作,自然就包括了模拟鼠标点击在内。
适用命令/函数:Click/MouseClick/ControlClick
其 中Click/MouseClick用来模拟用户的物理操作(点击),把鼠标点击事件发送到指 ...


把有一个瞄准镜一样的图标拖到目标窗口上就会显示出相应的内容了,不过并不是每个窗口都能完全探测到,AU3学好的话,写你这些小工具很简单很实用

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-21 17:40 | 显示全部楼层
原帖由 kevinchengcw 于 2010-3-21 16:53 发表
hotkeyset("^{down}","Terminate")
msgbox(0,"工作提示","切换后5秒钟后开始自动点击,确定后将鼠标移到要点的按钮上" & @crlf & "中途要退出请按,请注意时间")
sleep(5000)
while 1
mouseclick("left")
sleep(1 ...



这个程序确实比前面的那个适用范围大了。刚才我试了一下这个代码,发现它已经完全满足了我的要求了。这个好像可以应对需要分别反复交替点击两个按钮的情况。
也就是说,这个代码完全解决了我的问题,但我却不太明白为什么?我刚才使用的页面是先点击一个“是”按钮,然后再点击一个“确定”按钮,但在“确定”按钮的右边还有一个“取消”按钮,程序为什么点击的不是“取消”按钮而是“确定”按钮(当然我需要的就是这个)?

非常感谢kevinchengcw 老师的热心帮助。你帮我解决了一个大问题。

TA的精华主题

TA的得分主题

发表于 2010-3-21 17:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
一般默认的按钮都是“确定”,当然如果默认不是“确定”,可以在发送回车前再发送一个tab键,除非有必要,不然一般我都不会写太复杂的程序,简单而实用就好了,如果作为学习与研究的话,你可以试着把他完善到自动启动你要点击的页面,并点击相应按钮,学以致用最重要

对了,那个可以编译成可执行文件的,在菜单的工具里,这样你就不用每次启动编译器了,AU3是很接近vb的语言

[ 本帖最后由 kevinchengcw 于 2010-3-21 18:05 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-21 18:01 | 显示全部楼层
原帖由 kevinchengcw 于 2010-3-21 17:51 发表
一般默认的按钮都是“确定”,当然如果默认不是“确定”,可以在发送回车前再发送一个tab键,除非有必要,不然一般我都不会写那么复杂的程序,像这样简单而实用就好了,如果作为学习与研究的话,你可以试着把他完善到 ...


那个可以编译成可执行文件的我已经下载了,并且刚才试用了,效果非常好,以后我就用它了。我是今天才接触AU3,现在只能是直接使用你的东西。等我以后学习学习,再去实现更多的功能。
再一次感谢!

TA的精华主题

TA的得分主题

发表于 2010-3-21 18:04 | 显示全部楼层
原帖由 gqy7979948 于 2010-3-21 18:01 发表


那个可以编译成可执行文件的我已经下载了,并且刚才试用了,效果非常好,以后我就用它了。我是今天才接触AU3,现在只能是直接使用你的东西。等我以后学习学习,再去实现更多的功能。
再一次感谢!


祝你成功
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-6-11 22:53 , Processed in 0.052160 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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