AHK 快餐店[26] - 在命令提示符下粘贴

命令提示符非常令人讨厌的一点是,不能用快捷键 Ctrl+V 粘贴。所以,便有了这段帅呆了的代码:
#IfWinActive ahk_class ConsoleWindowClass
^v::
send %Clipboard%
return
#IfWinActive 是一个用来对特定窗口实现快捷键(hotkey)和热字符串(HotString)的命令,ahk_class ConsoleWindowClass 是命令提示符的类名,可以用 ahk 自带的 Window Spy 获得。一起解释就是,以下热键只对命令提示符起作用,其他窗口中 Ctrl + V 还是原来的 Ctrl + V。
Clipboard 是代表剪贴板的 ahk 自带的变量,我们要把 Clipboard 的值发送出去,所以当然要加上双引号。http://www.appinn.com/本文来自小众软件。
此命令当然不能发送中文了,一般来说,很少情况下会在命令提示符里粘贴中文。这里有代码演示怎么发送中文。
另为什么不模拟右键的动作来粘贴呢?问得好,因为我们不知道当前的鼠标是不是停留在命令提示符的上方,所以直接 Send {RButton} 的办法是不通用的。
难道就没有办法了吗?不是滴。请看下面的代码:
#IfWinActive ahk_class ConsoleWindowClass
^v::
MouseClick, Right, %A_CaretX%, %A_CaretY%,,0
send p
return
MouseClick 的相关参数请看中文版的 ahk 帮助文件。A_CaretX 又是一个 ahk 自带的变量,它的值就是当前光标——特指那个文本框中一闪一闪的光标——的 X 坐标,A_CaretY 当然就是 Y 坐标了。AHK 无法正确得到光标在 Firefox 下的坐标。
Send p ,就是在右键菜单弹出来后,按下 p,点击粘贴命令。
Tag: AHK, 命令提示符, 粘贴 2,946 Views


[回复]
[回复]
皮卡西 reply on 八月 11th, 2008,00:13:
[回复]
Enson reply on 八月 11th, 2008,08:17:
[回复]
f2::
send {left}{space}
可这样写出来后在外面是可以用的,不过进了游戏却不行。
ps.偶只会简单的键盘堆替换和热字符串,别的更复杂的不会写 (_ _)
ps2.虽然已经有工具可以实现DNF的技能替换,不过那些在全局下面也能用,不太方便,有没有可能让脚本只在DNF的程序下才能用。
再次感谢
[回复]
第二个:本文不就是教了怎么在特定窗口实现快捷键了嘛~看不明白请看以前的教程。或者去上面那个链接的地址提问。
[回复]
sfufoet reply on 八月 11th, 2008,08:50:
[回复]
安德罗妮 reply on 八月 11th, 2008,13:15:
发送函数真是太复杂了,看起来只能拿来藏着……
不懂的可以老老实实模拟操作,啊哈哈哈
[回复]
所以我邪恶地用同一个梦想版PowerCmd~
另外URL里推广一点私货……暂时只有一点……
[回复]
平时我也很少用到。最多的就是上次做智能解压,老是折腾 7z,最近网络不稳定,老 ping。
[回复]
sfufoet reply on 八月 11th, 2008,16:00:
[回复]
[回复]
sfufoet reply on 八月 11th, 2008,16:00:
[回复]
D调 reply on 八月 11th, 2008,16:06:
[回复]
sfufoet reply on 八月 11th, 2008,16:08:
[回复]
D调 reply on 八月 11th, 2008,16:44:
[回复]
JackyLan reply on 八月 12th, 2008,12:02:
其实我用新浪网盘不过是想备份一点东西,顺便赚点积分。
[回复]
[回复]
呃 reply on 八月 11th, 2008,16:41:
想要点可以上小众的软件。。。。
[回复]
sfufoet reply on 八月 11th, 2008,16:43:
[回复]
复制 — 直接选中文字,再右击一下或回车。
粘贴 — 右击。
[回复]
[回复]
sfufoet reply on 八月 12th, 2008,22:32:
SC163&o::Run op.lnk
SC163&f::Run f.lnk
结果无论按Fn和什么键,都是启动op.lnk,请问我该如何处理?谢谢
[回复]
我没有笔记本。。建议试试加个空格,如果不行,我也没办法啦。
SC163 & o::Run op.lnk
[回复]
sfufoet reply on 八月 15th, 2008,16:25:
[回复]
dlmaple reply on 八月 16th, 2008,15:27: