【问题标题】:AlwaysOnTop not working with documented syntax in AutoHotKeyAlwaysOnTop 不使用 AutoHotKey 中记录的语法
【发布时间】:2019-01-17 19:57:47
【问题描述】:

我发现 AutoHotKey 中的 AlwaysOnTop 功能存在一些不一致之处。以如下脚本为例:

#+a::
{
    WinSet , AlwaysOnTop , , A
    return
}

#+b::
{
    WinSet , AlwaysOnTop , Toggle
    return
}

第一个选项基于我多年来一直使用的脚本,该脚本是从其他来源拼凑而成的。该版本可以在当前活动窗口上切换 AlwaysOnTop 设置。

第二个选项是current documentation 所说的应该如何完成。当我尝试触发 AlwaysOnTop 设置时,这没有任何作用。

不仅仅是文档错误(至少不是完全错误),因为该语法似乎适用于我刚刚编写的另一个脚本。在这个新脚本中,我总是希望它只激活 AlwaysOnTop 模式,从不切换,所以我使用WinSet , AlwaysOnTop , On,它工作正常。

保留开/关/切换值也不起作用(尽管它应该默认为切换),使用 -1(最新版本 AHK 中的新选项)也不起作用。运行它不会引发任何错误,但如果我使用逗号,它会说它遇到了语法错误。

任何想法为什么记录的语法不起作用?这是 AHK 中的实际故障,还是我只是误解了它在这种情况下的用途?我什至不知道为什么我的原始版本有效,因为我在任何地方都找不到该语法。

【问题讨论】:

标签: autohotkey


【解决方案1】:

文档并没有说不能以第一种方式完成。它说,如果您以第一种方式执行此操作,则默认为切换。在 WinSet 顶部还有一个关于 WinTitle 的链接,它描述了 A 的作用(获取活动窗口)。

如果误导您将 WinTitle 视为可选,则仅当您想使用 Last Found Window 时,WinTitle 才是可选的。

例如你可以这样做:

IfWinActive, %WinTitle%
    WinSet, AlwaysOnTop ; Toggles AlwaysOnTop for the previously checked window.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-08
    • 1970-01-01
    • 2016-05-15
    • 1970-01-01
    相关资源
    最近更新 更多