使用AutoHotKey,如何在热键中使用ctrl + alt,而无需系统在发送其他密钥时将其视为关闭?

问题描述:

我试图映射CTRL + ALT +d删除。不幸的是,当我按下该组合时,系统会看到ctrl + alt + 删除,自然会出现锁定屏幕。使用AutoHotKey,如何在热键中使用ctrl + alt,而无需系统在发送其他密钥时将其视为关闭?

我已经试过这使CTRLALT键查找到系统中,但没有奏效:

^!d::Send {Alt Up}{Ctrl Up}{Delete} 

我试图把~$前的热键,但也没有效果。

我知道我可以使用KeyWait等待修饰键被释放:

~^!d:: 
KeyWait Control 
KeyWait Alt 
Send {Delete} 
return 

但我不能反复按CTRL + ALT +删除快速删除字符。我不得不在每次按下之间释放修饰键,这很尴尬。

我知道我可以模拟一个向前删除与选择的权利,然后退格:

^!d::Send {Shift Down}{Right}{Shift Up}{Backspace} 

但是,这是一个有点缺憾,但它确实工作不释放改性剂。它开始觉得没有办法完成这个,所以任何帮助将不胜感激。

您可以尝试SendPlay,因为它会创建一系列直接流向活动窗口的事件(消息),而不是执行其本机操作系统功能。

^!d::Sendplay {Delete} 

文件链接http://ahkscript.org/docs/commands/Send.htm#SendPlayDetail

希望它可以帮助

+0

谢谢,这工作。我不知道为什么我没有尝试过SendPlay,尽管文档中说“SendInput和SendPlay使用与Send相同的语法,但通常更快,更可靠”。 – jdunning 2014-10-31 01:04:22