Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在NodeJS中快速发送多个击键_Node.js_Key_Midi_Keystroke_Piano - Fatal编程技术网

Node.js 如何在NodeJS中快速发送多个击键

Node.js 如何在NodeJS中快速发送多个击键,node.js,key,midi,keystroke,piano,Node.js,Key,Midi,Keystroke,Piano,所以我一直在写一个脚本,它可以自动播放MIDI文件。然而,我遇到的主要问题是发送击键,我已经设法能够使用一次发送一个击键,但这成为尖锐的键和和弦的问题。要发送一个尖锐的键,你不能只发送大写字母,你必须发送一个带有修饰语shift的小写字母。你也只能一次发送一个,所以最终的结果是我对和弦中的所有键进行循环,它像是从左到右快速扫掠键,而不是同时按下所有和弦,听起来很可怕。我也尝试过,但我很快就摆脱了它,因为它产生了数千个java进程并使我的电脑崩溃 有人对此有什么建议或知道更好的方法吗?,而不是点击

所以我一直在写一个脚本,它可以自动播放MIDI文件。然而,我遇到的主要问题是发送击键,我已经设法能够使用一次发送一个击键,但这成为尖锐的键和和弦的问题。要发送一个尖锐的键,你不能只发送大写字母,你必须发送一个带有修饰语
shift
的小写字母。你也只能一次发送一个,所以最终的结果是我对和弦中的所有键进行循环,它像是从左到右快速扫掠键,而不是同时按下所有和弦,听起来很可怕。我也尝试过,但我很快就摆脱了它,因为它产生了数千个java进程并使我的电脑崩溃

有人对此有什么建议或知道更好的方法吗?

,而不是点击修改器:

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)
    }
}
,而不是使用修改器轻敲:

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)
    }
}

您是否考虑过只在浏览器扩展中触发虚拟钢琴?您是否考虑过只在浏览器扩展中触发虚拟钢琴?