我发现与AutoHotKey中的AlwaysOnTop函数不一致。以以下脚本为例:
#+a::
{
WinSet , AlwaysOnTop , , A
return
}
#+b::
{
WinSet , AlwaysOnTop , Toggle
return
}
第一个选项基于我多年使用的脚本,该脚本是从其他来源整理而来的。该版本可在任何当前活动窗口上切换AlwaysOnTop设置。
第二个选项是current documentation所说的应该如何做。当我尝试触发AlwaysOnTop设置时,此操作无济于事。
不仅仅是错误的文档(至少不是完全错误的),因为该语法似乎适用于我刚刚编写的另一个脚本。在这个新脚本中,我一直希望它仅激活AlwaysOnTop模式,从不切换,因此我正在使用WinSet , AlwaysOnTop , On
,并且运行良好。
将on / off / toggle值保留为既不起作用(尽管它应默认为切换),也不使用-1(最新版本的AHK中的新选项)。运行它不会引发任何错误,但是如果我玩逗号,它的确会说它遇到语法错误。
有什么想法为什么记录的语法不起作用?这是AHK中的实际故障,还是我只是误解了它在这种情况下的用法?我什至不知道为什么我的原始版本可以工作,因为我找不到任何地方记录的语法。
答案 0 :(得分:2)
文档没有说无法通过第一种方法完成。它说如果您以第一种方式进行操作,则默认情况下会进行切换。在WinSet的顶部还有一个有关WinTitle的链接,其中描述了 A 的功能(进入活动窗口)。
如果误导您将WinTitle视为可选,则WinTitle仅在您要使用Last Found Window时才是可选的。
例如,您可以执行以下操作:
IfWinActive, %WinTitle%
WinSet, AlwaysOnTop ; Toggles AlwaysOnTop for the previously checked window.