怎么操作无标题的窗口里的链接
想做个自动注册的脚本,CAD2019,第一次启动会有个无标题的窗口,能操作里面的链接吗?
这种界面可以使用找色点的坐标点击。那几个字的蓝色很独特,搜该窗口的颜色 0x0696DE 即可,快得很 afan 发表于 2024-5-3 13:45
这种界面可以使用找色点的坐标点击。那几个字的蓝色很独特,搜该窗口的颜色 0x0696DE 即可,快得很 ...
已经可以按颜色查找到位置
Local $aCoord = PixelSearch(0, 0, 1920, 1440, 431831)
MouseMove($aCoord, $aCoord)
但还有个问题,没有窗口标题,不知道怎么判断这个窗口已经出现了,因为有的时候每台机器配置不一样,运行软件的速度不一样,导致跳出这个界面的时间不统一, 让程序等待2分钟再找色块也可以解决,但不是好方法。 无标题就用高级模式(窗口类) afan 发表于 2024-5-4 13:27
无标题就用高级模式(窗口类)
If WinExists("") Then
MsgBox($MB_SYSTEMMODAL, "", "窗口已存在")
Else
MsgBox($MB_SYSTEMMODAL + $MB_ICONERROR, "Error", "窗口不存在")
EndIf
找不到窗口 发现有个进程出现第4次时,就会跳出这个窗口。现在判断进程数量后,再执行。
#include <AutoItConstants.au3>
Run("C:\Program Files\Autodesk\AutoCAD 2019\acad.exe /product ACAD /language 'zh-CN'")
Global $processNum = 0
While 1 ;使用无限循环, 其中将调用 ExitLoop
waitProcess()
If $processNum = 4 Then ExitLoop
Sleep(200)
WEnd
Sleep(1000)
Local $aCoord = PixelSearch(0, 0, @DesktopWidth, @DesktopHeight, 431831)
Sleep(1000)
MouseClick($MOUSE_CLICK_LEFT, $aCoord, $aCoord)
Func waitProcess()
Local $aProcessList = ProcessList("acwebbrowser.exe")
For $i = 1 To $aProcessList
Next
$processNum = $i - 1
EndFunc ;==>waitProcess
WinWait("") afan 发表于 2024-5-4 22:33
WinWait("")
那个类别会变动{:3_101:}
这回变成了_LGSDialog2928
想到用正值表达式,现在已经找到了。
WinExists("")
谢谢
页:
[1]