繁体   English   中英

Autohotkey 和 StrokesPlus 之间的冲突

[英]Conflict between Autohotkey and StrokesPlus

我正在使用StrokesPlus (使用SendKeys 的鼠标手势)和以下快捷方式来关闭窗口:

acSendKeys("{DELAY=50}^{F_4}")

默认关闭窗口是 control+w,但并非所有程序都接受(例如,UltraEdit 使用 control+F4 - 使用 control+w 切换自动换行,我经常使用它)。

我还使用Florian Winkelbauer 的 4 Clip ,它将 F1-F4 绑定到剪贴板,因此 F1+c、F1+v 等用于复制/粘贴到第一个剪贴板。 来自 4clip 的绑定示例如下。

*F1::SendInput {blind}{F1}
*F2::SendInput {blind}{F2}
*F3::SendInput {blind}{F3}
*F4::SendInput {blind}{F4}

; F3 + F$
F3 & F4::
    Gosub SetDelimiter
return

; F4
F4 & c::CopyClipboard(4)
F4 & a::AppendClipboard(4)
F4 & s::SwapClipboard(4)
F4 & p::PrintClipboard(4)
F4 & v::PasteClipboard(c4)
F4 & b::PasteClipboard(cp4)
F4 & d::Clear(4)

我发现的问题是,当我使用 StrokesPlus 快捷方式时,窗口会关闭,但随后系统就好像仍然按下了控制键一样:我可以按 Esc 并出现开始菜单(就像按 control+ 时那样)逃脱)。

我已经在 Windows 7 64 位和 Windows XP 64 位上复制了这个。

我已经确认,如果我注释掉 4 剪辑中的所有 F4 绑定,问题就会消失。

我也在StrokesPlus 论坛Autohotkey 论坛上发布了这个。

RobStrokesPlus的作者)在他对我在 StrokesPlus论坛上的帖子的回复中解决

acSendControlDown()
acSendKeys("{F_4}")
acSendControlUp()

在 StrokesPlus 中使用上述而不是默认值:

acSendKeys("{DELAY=50}^{F_4}")

这是因为Ctrl键在StrokesPlus默认被占用为“忽略键”,这意味着当按下Ctrl键时,所有鼠标手势都会暂时禁用。

如果您不使用此功能,您可以进入首选项并将“忽略键”设置为“无”。 然后您可以像往常一样将Ctrl键写入脚本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM