问题描述
我正在尝试制作一个 ahk 脚本,它可以帮助我更轻松地激活 Outlook 2013 quickstep 快捷方式 Clt+Shf+1,我希望将其用作快速将处理过的电子邮件放入特定文件夹的一种方式。
我发现 Outlook 中默认的 Clt+Shf+1 快速步骤快捷方式应用于此快速步骤不太容易持续按下,因此希望制作一个 ahk 脚本,而不是让快捷方式 Alt+1 激活 Clt+Shf在 Outlook 中 +1。
我是 ahk 的新手,虽然我取得了一些成功,但我在这里做错了。
我尝试了以下方法,但它们不起作用:
!1:: 发送 {^+1} ; Alt+1 给出 Clt+Shft+1
和
!1::^+1 ; Alt+1 给出 Clt+Shft+1
感谢您对我应该做什么的任何建议。
解决方法
!1:: Send {^+1}
是错误的,因为你不应该使用 { }
,而 !1::^+1
几乎是正确的,但它只是将 Alt 键保持在那里,因为一些更深入的原因。
正确的做法是:!1::SendInput,^+1
(SendInput 是推荐的发送模式,但普通的 Send
也可以)
此外,您可能需要为此使用上下文相关的热键,以便热键仅在 Outlook 应用程序打开时有效。
为此,您可以像这样使用 #IfWinActive
(docs):
#IfWinActive,ahk_exe outlook.exe
!1::SendInput,^+1
#IfWinActive
(我实际上不确定 Outlook 窗口来自名为 outlook.exe
的可执行文件,我只是假设。您可能需要将其更改为正确的 exe)