因此,我一直在研究一个脚本,该脚本获取MIDI文件并在Virtual Piano上自动播放它们。但是,我遇到的主要问题是发送击键,我设法能够使用RobotJS一次发送一次击键,但这对于尖锐的琴键和弦来说成为一个问题。要发送快捷键,您不仅要发送大写字母,还必须发送带有修饰符shift
的小写字母。您一次也只能发送一个,因此最终结果是我对和弦中的所有琴键进行循环,就像快速扫动琴键的从左到右,而不是同时按下所有和弦一样,听起来很恐怖。我也尝试过Node Key Sender,但很快就摆脱了它,因为它产生了成千上万个Java进程并使我的PC崩溃了。
有人对此有任何建议或了解更好的方法吗?
答案 0 :(得分:0)
When using the modifiers (alt, shift, ctrl) with robotjs,而不是使用修饰符:
robot.keyTap("a","shift")
切换修改器,点击所需的键,然后取消切换修改器。
const play = (key, mod) => {
if (mod) {
robot.keyToggle(mod, "down")
robot.keyTap(key)
robot.keyToggle(mod, "up")
} else {
robot.keyTap(key)
}
}