找回密码
 加入
搜索
查看: 306|回复: 8

[AU3基础] 怎么操作无标题的窗口里的链接

[复制链接]
发表于 2024-5-2 17:51:35 | 显示全部楼层 |阅读模式

想做个自动注册的脚本,CAD2019,第一次启动会有个无标题的窗口,能操作里面的链接吗?


本帖子中包含更多资源

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

×
发表于 2024-5-3 13:45:09 | 显示全部楼层
这种界面可以使用找色点的坐标点击。那几个字的蓝色很独特,搜该窗口的颜色 0x0696DE 即可,快得很
 楼主| 发表于 2024-5-4 11:46:30 | 显示全部楼层
afan 发表于 2024-5-3 13:45
这种界面可以使用找色点的坐标点击。那几个字的蓝色很独特,搜该窗口的颜色 0x0696DE 即可,快得很 ...

已经可以按颜色查找到位置
Local $aCoord = PixelSearch(0, 0, 1920, 1440, 431831)
MouseMove($aCoord[0], $aCoord[1])

但还有个问题,没有窗口标题,不知道怎么判断这个窗口已经出现了,因为有的时候每台机器配置不一样,运行软件的速度不一样,导致跳出这个界面的时间不统一, 让程序等待2分钟再找色块也可以解决,但不是好方法。
发表于 2024-5-4 13:27:41 | 显示全部楼层
无标题就用高级模式(窗口类)
 楼主| 发表于 2024-5-4 20:29:40 | 显示全部楼层
afan 发表于 2024-5-4 13:27
无标题就用高级模式(窗口类)

    If WinExists("[CLASS:Chrome_RenderWidgetHostHWND]") Then
        MsgBox($MB_SYSTEMMODAL, "", "窗口已存在")
    Else
        MsgBox($MB_SYSTEMMODAL + $MB_ICONERROR, "Error", "窗口不存在")
    EndIf

找不到窗口
 楼主| 发表于 2024-5-4 22:08:03 | 显示全部楼层
发现有个进程出现第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[0], $aCoord[1])


Func waitProcess()
        Local $aProcessList = ProcessList("acwebbrowser.exe")
        For $i = 1 To $aProcessList[0][0]
        Next
       
        $processNum = $i - 1
EndFunc   ;==>waitProcess


发表于 2024-5-4 22:33:54 | 显示全部楼层
WinWait("[CLASS:_LGSDialog2184]")
 楼主| 发表于 2024-5-5 12:35:17 | 显示全部楼层
afan 发表于 2024-5-4 22:33
WinWait("[CLASS:_LGSDialog2184]")

那个类别会变动
这回变成了_LGSDialog2928





本帖子中包含更多资源

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

×
 楼主| 发表于 2024-5-5 12:40:30 | 显示全部楼层
想到用正值表达式,现在已经找到了。
WinExists("[REGEXPCLASS:(_LGSDialog.*)]")

谢谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-22 10:43 , Processed in 0.080919 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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