Autohotkey 使用自动热键编程一系列简单的键盘快捷键
我是一个AHK初学者,已经试了一天了。我取得了一些成功,但我被困住了 我想使用ahk自动执行一个名为Shotcut(视频编辑器)的程序中现有键盘快捷键所完成的重复任务。因此,在Shotcut中,我在时间轴上一个接一个地安排了一系列剪辑(我将它们称为clip1、clip2、clip3等) 目前,使用Shotcut的键盘快捷键,我按下:Autohotkey 使用自动热键编程一系列简单的键盘快捷键,autohotkey,Autohotkey,我是一个AHK初学者,已经试了一天了。我取得了一些成功,但我被困住了 我想使用ahk自动执行一个名为Shotcut(视频编辑器)的程序中现有键盘快捷键所完成的重复任务。因此,在Shotcut中,我在时间轴上一个接一个地安排了一系列剪辑(我将它们称为clip1、clip2、clip3等) 目前,使用Shotcut的键盘快捷键,我按下: Alt+右箭头(将光标移动到剪辑1的末尾) 向上翻页(将光标向后移动1秒) …然后我将剪辑2向后拖动到剪辑1上,以创建一个过渡(在Shotcut中没有键盘快捷键)。
^h::
send, {PgUp}
return
但是,我尝试了以下方法,只是为了解决按Ctrl+g键时出现“Alt+向右箭头”的问题,但没有成功-光标静止不动:
^g::
send, {!alt}
return
我哪里做错了?请确保你走的是正确的道路。使用帮助,特别是“初学者教程”,也可以在 因此,只需将它们全部添加在一起,并可以选择在两个步骤之间添加一些等待时间,以确保第一个步骤完成,如下所示:
^h::
Send, {PgUp}
Sleep, 100 ; optional delay (in milliseconds)
SendInput, !{right}
return
或者试试这样:
^g::doSomething(A_ThisHotkey) ; ctrl+g presses alt+left
^h::doSomething(A_ThisHotkey) ; ctrl+h presses alt+right
doSomething(me){
msgbox success! You pressed %me%
Send, {PgUp}
Sleep, 100 ; optional delay (in milliseconds)
IfEqual, me, "^g", SendInput, {Alt Down}{left}{Alt Up}
IfEqual, me, "^h", SendInput, {Alt Down}{right}{Alt Up}
return
}
Hth,PGilm提供了一个如何组合热键的好例子。对于他的设置中的
Sleep,100
,您可能希望将其替换为KeyWait,LButton,U
通过实现这一点,您可以导致
SendInput!{right}
释放鼠标1键后触发。您可以添加更多的KeyWait、LButton、D
和KeyWait、LButton、U
,无论您在示例中将剪辑2拖动到剪辑1上需要多少次总点击量。多亏了@PGilm和@ilhom,您的回复给了我所需的启动。我最后的密码是
^h::
Send !{right}
Sleep 600
send, {PgUp}
Sleep 2000
Send !{right}{Alt Up}
Sleep 600
Send !{right}{Alt Up}
Sleep 600
send, {PgUp}
return
像做梦一样工作!我发现我需要{Alt Up}
在之后!{right}
或者它不起作用。
(我知道代码很简单,但对我(一个新手)来说,这为Shotcut和其他程序中的自动化过程开辟了许多创造性的可能性)。太好了
PS抱歉,如果回答我自己的问题是不礼貌的……EDIT:我刚刚通过使用^g::SendInput解决了alt+right问题(如上所述)!{right}返回。。现在我只需要找出如何让快捷方式连续运行。谢谢!我明天(睡觉后)试试这个。非常有用!!非常感谢。我明天会试试这个。非常感谢你的回答。关于在这里发布的新手问题-我如何格式化我的文本,使代码片段像你一样出现在灰色框中?@JSR check-edited-answer。另外,为了获得代码片段,我对一组文本使用ctrl+q。它的效果是将文本缩进4个空格(这也构成了一个代码块)。反勾号(从tilda键)
灰色框
内联。在编辑屏幕的右侧或?新问题框右侧的图标。这是一种简单的降价编辑语言。谢谢,PGilm。我已经掌握了窍门!!好东西。如果您有时需要按alt+left键,请查看我编辑的答案。您将在帮助中发现,它确实提到,在发送密钥时,最好明确地持有密钥。例如,对于ctrl+c复制,Send,{ctrl-down}c{ctrl-up}
显然比Send,^c
更可靠。所以对你来说,{Alt Down}{right}{Alt Up}
。我还可以提到,如果一行中的两个Alt+right步骤之间不需要任何时间,那么多个按键的工作方式是这样的:{Alt Down}{right 2}{Alt Up}
,绝妙的建议,@PGilm。是的,我计划做更多的自动化操作,包括Ctrl-c和Alt+left,所以您的帮助很到位!