我正在尝试在后台向窗口发送击键 此窗口没有名称。我找不到一种方法来识别窗口而不激活它。可能吗 ? :)
答案 0 :(得分:2)
使用ControlSend命令。您可以使用WinTitle
和/或WinText
来标识窗口。因此,如果窗口没有WinTitle
使用WinText
。 WinText
是目标窗口元素文本的一部分。如果您想使用窗口隐藏元素的WinText
,则需要使用DetectHiddenText命令,如下所示:DetectHiddenText, On
已编辑1 (由 Joe DF 建议):
您可以使用实用程序" AutoIt3 Window Spy"获取WinTitle
和WinText
。随AutoHotkey一起安装(查看开始菜单文件夹。)。类似的实用程序(我使用那个)内置SciTE4AutoHotkey。
已编辑2 (回应 Maushas Laumaris 评论):
据我所知here,您也可以使用ahk_class
代替WinTitle
。我在下面的图片上标记了您的窗口ahk_class
:
答案 1 :(得分:0)
所以我找到了解决方案,并提供了这些论坛中人们的提示。
使用" AutoIt3 Window Spy"程序(附带ahk脚本)我已经确定窗口类名的一部分没有变化。
通过在RegEx模式下使用SetTitleMatchMode(这样脚本只需要部分ahk_class来识别窗口)我能够达到我需要的结果 - 在不激活它的情况下向窗口发送击键。