找回密码
 加入
搜索
查看: 14530|回复: 43

[AU3基础] 请教个问题,Send("{DOWN9}") 没作用

  [复制链接]
发表于 2015-1-30 12:34:55 | 显示全部楼层 |阅读模式
小弟刚学au3,对这教程,然后想自己写一个简单的该修MAC的,一开始把Send("{DOWN9}")写进去按F5是可以运行的,但是再运行就不行了,请大神指点一下
Run("control.exe netconnections")
WinWaitActive("网络连接","")
WinActivate("网络连接","")
Send("{SPACE}")
Send("!{ENTER}")
WinWaitActive("本地连接 属性","")
WinActivate("本地连接 属性","")
ControlClick("本地连接 属性","","Button1")
WinWaitActive("Realtek PCIe GBE Family Controller 属性","")
WinActivate("Realtek PCIe GBE Family Controller 属性","")
Send('^{TAB}')
WinWaitActive("Realtek PCIe GBE Family Controller","高级")
WinActivate("Realtek PCIe GBE Family Controller","高级")
Send("{DOWN9}")
发表于 2015-1-30 12:38:19 | 显示全部楼层
Send("{DOWN 9}")
发表于 2015-1-30 12:38:49 | 显示全部楼层
少了个空格
 楼主| 发表于 2015-1-30 12:56:11 | 显示全部楼层
回复 3# zhouhaijin

果然是,哈哈,这么低级的错误,我都没留意到,多谢多谢,另外想问一下那个控件ID是啥意思,如图这个控件ID就是1?,我是新手,看教程很多不懂的,不胜赐教

本帖子中包含更多资源

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

×
发表于 2015-1-30 13:05:39 | 显示全部楼层
没关系,有不懂就问问,谁都是新手开始的。
ID的详细解释吗?ID已经很明了了。就是ID。
ControlClick("本地连接 属性","","Button1")     ;这里的Button1可以填ID,注意ID不能用""号
发表于 2015-1-30 13:08:38 | 显示全部楼层
例如 发送一些文本到记事本窗口

ControlSend("无标题 - 记事本", "", "[CLASS:Edit; INSTANCE:1]", "This is some text")

或者

ControlSend("无标题 - 记事本", "", "[CLASSNN:Edit1]", "This is some text")

或者

ControlSend("无标题 - 记事本", "", "Edit1", "This is some text")
发表于 2015-1-30 13:08:43 | 显示全部楼层
例如 点击 "我的窗口" 中控件ID为254的控件

ControlClick("我的窗口", "", "[ID:254]")

或者

ControlClick("我的窗口", "", 254)
 楼主| 发表于 2015-1-30 13:19:02 | 显示全部楼层
回复 5# zhouhaijin
谢谢大哥,原来是这样
我一开始还以为是上面图片的那个ID数字1
“”的意思是不是省略或者是默认的意思,跟’ ‘是一样的吧,看有的教程是用两个双引号,有的是用一个双引号。
另外那个
WinWaitActive("Realtek PCIe GBE Family Controller 属性","")
WinActivate("Realtek PCIe GBE Family Controller 属性","")
里面的窗口标题和窗口文本,比如我
Send('^{TAB}')
WinWaitActive("Realtek PCIe GBE Family Controller","高级")
WinActivate("Realtek PCIe GBE Family Controller","高级")
实际上两个窗口是一样的,只不过输入TAB到高级这个选项卡了,winwaitactive和winactivate里面的窗口文本需不需要另外写比如我上面我写的是高级
发表于 2015-1-30 13:24:27 | 显示全部楼层
" "跟' '是一样的,就是有时候要输出“就可以用‘“’
发表于 2015-1-30 13:24:37 | 显示全部楼层
窗口文本我都没留意,我从来都是用""的,可选参数就是可填可不填
发表于 2015-1-30 13:29:43 | 显示全部楼层
WinWaitActive("Realtek PCIe GBE Family Controller 属性") 基本不需要另外写
 楼主| 发表于 2015-1-30 13:31:42 | 显示全部楼层
回复 6# zhouhaijin
能不能这么理解,这个命令的参数都包含三个基本的参数,比如
ControlSend("无标题 - 记事本", "", "[CLASSNN:Edit1]", "This is some text")
基本参数要有标题,窗口文本,(为什么你的窗口文本用“”来代替,是不是说如果是不重要或者重复的话就可以用省略不写用“”来代替就可以了)和其他参数,这个发送这个就要包含位置和内容
发表于 2015-1-30 13:43:17 | 显示全部楼层
回复 12# cs8901


  参数我们说他不重要也不对,窗口文本只是用到的比较少,窗口文本在窗口标题有多个相同下来再细进行筛选,我没用过。基本根据窗口标题就可以确定哪个窗口。
 楼主| 发表于 2015-1-30 13:48:43 | 显示全部楼层
我再请教一个问题
Run("control.exe netconnections")
WinWaitActive("网络连接","")
WinActivate("网络连接","")
Send("{SPACE}")
Send("!{ENTER}")
WinWaitActive("本地连接 属性","")
WinActivate("本地连接 属性","")
ControlClick("本地连接 属性","","Button1")
WinWaitActive("Realtek PCIe GBE Family Controller 属性","")
WinActivate("Realtek PCIe GBE Family Controller 属性","")
Send('^{TAB}')
WinWaitActive("Realtek PCIe GBE Family Controller","高级")
WinActivate("Realtek PCIe GBE Family Controller","高级")
Send('{DOWN 9}')
ControlClick("本地连接 属性","","Button1")
它没选中图片中的旁边的圆圈就停了,是不是Send('{DOWN 9}')之后还要WinWaitActive  WinActivate之类的再ControlClick("本地连接 属性","","Button1"),试了好多方法都不行,我本想ControlClick("本地连接 属性","","Button1")之后再Send('!V')的,然后发送粘贴板的内容到窗口
发表于 2015-1-30 13:52:17 | 显示全部楼层
你应该是Send('{DOWN 9}')的时候停在了中间还没到9次后那是吧,应该是send down 9的速度太快了他反应不过来
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-22 07:01 , Processed in 0.085478 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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