我是AHK初学者,试了一天。我已经取得了一些成功,但我被困住了。
我想使用ahk自动完成重复的任务,在一个名为Shotcut (视频编辑器)的程序中,现有的键盘快捷键完成。因此,在Shotcut中,我在时间轴上依次排列了一系列剪辑(我将称之为clip1、clip2、clip3等)。
目前,我使用Shotcut的键盘快捷键,按:
..then我将剪辑2向后拖动到剪辑1上,以创建一个转换(在Shotcut中没有此转换的键盘快捷键)。然后..。
所以我想知道的是,我如何用脚本来:
和/或:
或者,更好的是,我可以:
当按下PageUp时,我使用以下方法成功地获得了“Ctrl+h”:
^h::
send, {PgUp}
return然而,我尝试了下面的解决方案,只是为了在按下Ctrl+g时获得“Ctrl+g箭头”,但是它没有工作,-the游标没有动:
^g::
send, {!alt}
return我哪里出问题了?
发布于 2019-08-20 22:05:58
你肯定在正确的轨道上。使用帮助,特别是https://www.autohotkey.com/docs/Tutorial.htm#s1上的“初学者教程”
因此,只需将它们全部添加到一起,并且可以在步骤之间添加一些等待时间,以确保第一个步骤完成,如下所示:
^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,
发布于 2019-08-20 22:15:56
PGilm提供了一个很好的例子来说明如何组合热键。对于设置中的Sleep, 100,您可能希望用KeyWait, LButton, U https://www.autohotkey.com/docs/commands/KeyWait.htm替换它。
通过实现这一点,您可以使SendInput !{right}在释放鼠标1按钮后触发。您可以添加更多的KeyWait, LButton, D和KeyWait, LButton, U,无论在示例中拖拽剪辑2超过剪辑1所需的总点击次数。
发布于 2019-08-21 09:00:06
感谢“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和其他程序中自动化进程提供了很多创造性的可能性)。泰克斯!!
抱歉,如果回答我自己的问题是不礼貌的话.
https://stackoverflow.com/questions/57581792
复制相似问题