Déplacement d’un visuel avec les flèches du clavier

Déplacer un dessin avec les flèches du clavier en ActionScript 3 (AS3)

Nous allons utiliser pour gérer le déplacement d'un objet, la classe KeyboardEvent. Nous verrons ici l'événement keyDown (l'appui sur une touche).
Dans la fonction qui sera exécutée en réponse de l'événement, nous allons tester le code de la touche du clavier afin de définir les différentes interactions à réaliser.

Actionscript:
  1. // Objet de dessin
  2. var rectangle:Sprite = new Sprite();
  3. // Remplissage du rectangle avec du bleu
  4. rectangle.graphics.beginFill(0x0000FF);
  5. // Dessin du rectangle
  6. rectangle.graphics.drawRect(50, 200, 100, 30);
  7. // Déplacement du rectangle à la souris
  8. function deplacement(evt:KeyboardEvent):void
  9. {
  10.     // Test de la touche utilisée
  11.     switch(evt.keyCode)
  12.     {
  13.        // déplacement vers la gauche
  14.        case Keyboard.LEFT:
  15.           evt.target.x-=5;
  16.           break;
  17.        // déplacement vers le haut
  18.        case Keyboard.UP:
  19.           evt.target.y-=5;
  20.           break;
  21.        // déplacement vers la droite
  22.        case Keyboard.RIGHT:
  23.           evt.target.x+=5;
  24.           break;
  25.        // déplacement vers le bas
  26.        case Keyboard.DOWN:
  27.           evt.target.y+=5;
  28.           break;
  29.        // pas de déplacement
  30.        default :
  31.           evt.target.x+=0;
  32.     }
  33. }
  34. // Affichage du rectangle
  35. this.addChild(rectangle);
  36. // Focus sur le rectangle pour qu'il puisse être actif
  37. stage.stageFocusRect = false; // Le rectangle jaune du focus est supprimé pour tous les objets
  38. stage.focus = rectangle;
  39. // Ecouteur de l'événement keyDown sur le rectangle
  40. rectangle.addEventListener(KeyboardEvent.KEY_DOWN, deplacement);

;)