swing - Event key arrow in Java -


i simulating superman flying in java.

how can make event considers both right arrow , left arrow keys?

i set event of each arrow so:

 public void keypressed(keyevent e)  {  int keycode=e.getkeycode();   switch(keycode)  {      case keyevent.vk_left:          supermanleft.moveleft();          break;      case keyevent.vk_right:          supermanfly.moveright();          break;      case keyevent.vk_up:          superman.moveup();          break;      case keyevent.vk_down:          superman.movedown();          break;  } } 

when click 2 arrows simultaneously, superman goes back.

when both keys pressed, each 1 call keypressed. can maintain set of keys pressed , see if there 2 keys pressed need:

private set<character> pressed = new hashset<character>();  public synchronized void keypressed(keyevent e) {      pressed.add(e.getkeychar());      if (pressed.size() > 1) {         //check if pressed contains want contain     } else {        //only 1 key pressed - act normal     } }  public synchronized void keyreleased(keyevent e) {     //don't forget remove when released:     pressed.remove(e.getkeychar()); } 

hope helps.


Comments

Popular posts from this blog

angularjs - ADAL JS Angular- WebAPI add a new role claim to the token -

php - CakePHP HttpSockets send array of paramms -

node.js - Using Node without global install -