如果能正确识别控件信息,那就很好办。用ControlClick函数即可点击。
但看样子,这不是标准Windows窗体和控件。所以,在万不得已的情况下,只能考虑使用相对坐标方式,即通过你要点击的位置相对于程序窗口左上角的相对坐标位移,使用MouseClick函数进行点击。
相对坐标一般不会随窗体的放大或缩小而变化。准确的相对坐标需要通过MouseMove函数不断尝试演练得出。
对于自己创建的控件,一般都用GUICtrlSetData而不太用ControlSetText。
我这里测试不是每次都闪烁的啊,只是偶尔会闪 (AutoIt版本: 33715,Win7 64bit下测试)。
你用 _GUICtrlTab_SetItemText 试试,貌似看上去好些,需要 #include <GuiTabau3>。
#include <GUIConstantsExau3>#include <GuiTabau3>
Example()
Func Example()
Local $msg
GUICreate("My GUI Tab")
$tab = GUICtrlCreateTab(10, 10, 200, 100)
$btn = GUICtrlCreateButton("tab1 - pass", 20, 156, 100, 30)
GUISetState()
$tab0 = _GUICtrlTab_InsertItem($tab, 0, "tab0")
$tab1 = _GUICtrlTab_InsertItem($tab, 1, "tab1")
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
If $msg = $btn Then
If GUICtrlRead($btn) == "tab1 - pass" Then
GUICtrlSetData($btn, "tab1 - fail")
_GUICtrlTab_SetItemText($tab, 1, "Pass")
Else
GUICtrlSetData($btn, "tab1 - pass")
_GUICtrlTab_SetItemText($tab, 1, "Fail")
EndIf
EndIf
WEnd
EndFunc ;==>Example
$myFile = 'D:\testtxt'
$lineNum = Random(1, 100, 1)
ClipPut( FileReadLine($myFile, $lineNum) )
一、编辑器SciTE Script Editor:
WinActivate("打开"); //聚焦到指定活动窗口
ControlFocus ( "打开", "", "ComboBox1"); //设置输入焦点到指定窗口的某个控件上
ControlSetText("打开", "", "Edit1", "C:\Users\vsc\Desktop\user\DDautoDOCX" ); //修改指定控件的文本改路径;
Sleep(500);
ControlClick("打开", "打开", "Button1");
Sleep(5000);
二、pycharm批量上传文件
把要上传的编号,如:0png , 1png, 2png这种(从0开始编号),放到同一目录下,然后for循环
for i in range(4):
file_name = "D:\%spng" % i # 参数化路径名称
# 执行autoit上传文件
ossystem("C:\Users\autoitexe) # 你自己本地的exe路径
三、autoit几个常用的语法
WinActivate("title") 聚焦到指定活动窗口
ControlFocus ( "title", "窗口文本", controlID) 设置输入焦点到指定窗口的某个控件上;
WinWait ( "title" , "窗口文本" , 超时时间 ) 暂停脚本的执行直至指定窗口存在(出现)为止;
ControlSetText ( "title", "窗口文本", controlID, "新文本" ) 修改指定控件的文本;
Sleep ( 延迟 ) 使脚本暂停指定时间,单位是毫秒;
ControlClick ( "title", "窗口文本", 控件ID , 按钮 , 点击次数 ) 向指定控件发送鼠标点击命令;
应该说Autoit提供的功能还是很强大的,并不单纯是简单的鼠标和键盘函数,Autoit有一个可以称之为庞大的函数库,这个函数库除了软件自带的函数库之外,还有由Autoit爱好者不断更新的用户自定义函数库。
例如,读取网页文字,就可以通过用户函数库中的IE函数库包来进行处理。如:
_IEDocReadHTML:返回整个文档的HTML源代码
_IEBodyReadText:返回网页中标记中的文本
_IEImgClick:模拟鼠标点击网页上某一个图像,可以通过文本、名称进行定位匹配
等等。
以上就是关于autoit 如何定位到软件界面的某一行全部的内容,包括:autoit 如何定位到软件界面的某一行、autoit的标签控件,用GUICtrlSetData(),更新文本时有闪烁,怎么办AU3、autoit 随机读取文本某行内容,并复制到剪切板。或者填写到指定地点等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)