![AutoHotkey:如何在按键时发送剪贴板的内容?](https://linux22.com/image/1213902/AutoHotkey%EF%BC%9A%E5%A6%82%E4%BD%95%E5%9C%A8%E6%8C%89%E9%94%AE%E6%97%B6%E5%8F%91%E9%80%81%E5%89%AA%E8%B4%B4%E6%9D%BF%E7%9A%84%E5%86%85%E5%AE%B9%EF%BC%9F.png)
我正在编写一个自动热键脚本,用于通过计算器运行突出显示的文本,我需要将剪贴板的内容作为按键序列发送,因为计算器实际上不支持粘贴数学运算。如何实现?
答案1
我修复了你在这里写的原始脚本:https://superuser.com/questions/7271/most-useful-autohotkey-scripts/31282#31282现在在我的 Vista 系统上运行良好。
以下是从 Wayback Machine 深处挖掘出来的有问题的代码片段:
^!c::
ClipSave := ClipboardAll
Send ^x
Run calc.exe
WinWaitActive Calculator
Send ^v
Send {Enter}
Sleep 250
Send ^c
WinClose
Send ^v
Clipboard := ClipSave
return
答案2
您需要使用这样的命令来“输入”剪贴板中的准确内容。
^+v::SendRaw %clipboard%
^+v 表示 ctrl+shift+v。请替换为所需的键盘快捷键。请参阅这一页哪些字符映射到哪些修饰键。
答案3
以映射Ctrl+K发送剪贴板数据为例:
^k::Send %clipboard%
答案4
对于我来说,尝试在 Visual Studio 上粘贴时,这里的所有其他答案都不起作用(粘贴后会插入一个破折号)。只有这个有效:
SendInput, ^v