2

我正在尝试在这里使用 Autohotkey 自动完成脚本:http ://www.autohotkey.com/board/topic/60998-autocomplete-updated-26713/但仅限于某些窗口。将整个脚本包含在#IfWinActive 中似乎不起作用。我真的很喜欢这个完成脚本,但不希望它出现在所有地方。有没有办法将自动完成限制在特定的窗口?

4

1 回答 1

2

对源代码的快速研究表明,每次按键都会导致调用Suggest子例程。这似乎是检查活动窗口的好地方。我在源代码中实现了最小的更改,您可以在此处查看
首先,您必须定义要从功能中排除的窗口,我通过定义一个窗口组来实现这一点:

GroupAdd, excludedWins, ahk_class CabinetWClass ; windows explorer
GroupAdd, excludedWins, ahk_class DV2ControlHost ; start menu search bar
GroupAdd, excludedWins, ahk_class ConsoleWindowClass ; console

请注意,我使用的是 Windows 7;也许,Windows 在其他版本中有其他标识符。

其次,您需要告诉Suggest子程序忽略这些窗口:

Suggest:
IfWinActive, ahk_group excludedWins
{
        return
}

它似乎工作,但我只测试了非常肤浅,并没有调查源代码的依赖关系。让我知道它是如何为您工作的。

于 2013-07-30T07:49:30.737 回答