[英]Is it possible to have multiple simultaneous key inputs with ProcessingJS?
我正在使用processingJS处理RTS风格的Webapp,这意味着有一个小地图代表一个较大的地图,用户在任何给定时刻只能看到其中的一小部分。 我刚刚添加了使用箭头键导航地图的功能,即:
void keyPressed(){
if(key == CODED){
switch(keyCode){
case(UP): //go up
case(DOWN): //go down , etc
但是,我希望能够通过按下两个箭头键的组合使用户沿对角线移动。 现在看来,这似乎是不可能的,因为“ keyCode”一次只能容纳一个值。
有人知道该问题有任何解决方法吗?
最好,
佐美
正如@Xenethyl在评论中的链接中所指出的,解决此问题的一种方法是通过跟踪按键的按下时间,然后监视按键的释放时间。 可以肯定地认为,在这两个事件之间的时间段内,没有按下任何键。
我会在javascript中执行以下操作:
document.onkeydown = keydown;
function keydown(evt) {
if (!evt) evt = event;
if (evt.ctrlKey && evt.altKey && evt.keyCode==115) {
alert("CTRL+ALT+F4"); }
else if (evt.shiftKey && evt.keyCode == 9) {
alert("Shift+TAB"); }
}
我尚未对此进行测试-但您是否尝试过:
void keyPressed(){
if(key == 'a' && key == 'b'){
println("this just happened");
}
}
如果这可行,则可以找到箭头键的ascii值,而不是使用键CODED。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.