我一直在搞 UI 自动化,但似乎没有取得任何进展。 我正在寻找这个
Edit
控制值。使用 UI Viewer 实用程序我可以获得它的值:
但实际上在脚本中执行此操作已被证明是令人沮丧的。 Descolada 的文档非常棒,我想我只是在某个地方搞砸了。这是我所拥有的:
UIA := UIA_Interface()
PDFXEdit := UIA.ElementFromHandle("ahk_exe PDFXEdit.exe")
documentEl := PDFXEdit.FindFirst("Name=Page")
documentEl.Highlight()
但是什么也没发生。我尝试过 VSCode 的调试功能来查看其中存储的内容。
PDFXEdit
似乎是 UIA
的副本,documentEl
只是一个空字符串:
如果有任何帮助,我将不胜感激。
试试这个(将 WINDOWID 替换为窗口的自动化 ID):
UIA := UIA_Interface() ;初始化UIA接口 PDFXEditClass := UIA.GetRootElement().FindFirstBy("automationId=WINDOWID").ClassName PDFXEdit := UIA.ElementFromHandle("AHK_class " PDFXEditClass)
documentEL1 := PDFXEdit.FindFirstBy("ControlType=编辑 AND Name='Page' AND AutomationId='cmd.view.PageNumber@'").Value
然后 documentEL1 被设置为具有值的变量。