IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Manipuler les touches directionnelles du clavier


Sujet :

C++

  1. #1
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 187
    Points : 51
    Points
    51
    Par défaut Manipuler les touches directionnelles du clavier
    Bonjour,
    j'ai un tableau à 2D dont une seule case contient le caractère "X".
    Le numéro de la case est généré automatiquement.

    Une fois mon programme lancé (en mode console), je dois afficher le tableau (avec l'unique "X") et déplacer le "X" dans mon tableau à l'aide des flèches directionnelles (haut, bas, gauche, droite).

    Pouvez vous me dire comment faire?

    Merci d'avance! Bonne soirée.

  2. #2
    Membre actif Avatar de Biosox
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 298
    Points : 203
    Points
    203
    Par défaut
    Hello,
    tu as quel OS et quel compilo?

    pour te donner une idée: Sur windows et avec visual 2005 en tout cas, tu peux faire un _getch() (ou getch()) (http://msdn.microsoft.com/en-us/libr...ak(VS.80).aspx)
    cette fonction retourne le prochain caractère entré sur le std::in.
    par contre:
    MSDN: quand on lit une touche de fonction (F1 F2...) ou une touche directionnelle, la function _getch() doit etre appellée deux fois. Le premier appel retourne 0x00 ou 0xE0, le second retourne le code de la touche.
    d'expérience:
    fleche gauche: E0, 4B
    fleche droite: E0, 4D
    fleche haut: E0, 48
    fleche bas: E0, 50

    Donc l'idée c'est de faire un getch en boucle. si le premier caractère est e0 ou 00, il faut lire le suivant pour savoir quelle touche a été appuyée... sinon, c'est directement le bon code

    Mais ça marche que sur windows (je pense que getch et _getch, c'est dans conio.h, et je crois que c'est windows uniquement)

  3. #3
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 187
    Points : 51
    Points
    51
    Par défaut
    J'utilise le compilateur : Compiler Gcc avec MinGW sur windows.

    Quelqu'un pourrait me montrer un exemple de code récupérant une touche directionelle du clavier?

    Merci d'avance.

Discussions similaires

  1. Parcourir une liste pucée avec les touches directionnelles
    Par hukiro dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 13/04/2013, 19h22
  2. convertir les touches d'un clavier qwerty en français
    Par wallash dans le forum Périphériques
    Réponses: 4
    Dernier message: 25/02/2009, 12h33
  3. Capturer les touches multimedia du clavier
    Par NeqO55 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/08/2008, 16h36
  4. Intercepter toutes les touches appuyées au clavier sur un TWinControl
    Par bubulemaster dans le forum Composants VCL
    Réponses: 13
    Dernier message: 04/03/2008, 10h06
  5. les touches de mon clavier sont complètement mélangées
    Par StyleXP dans le forum Windows XP
    Réponses: 4
    Dernier message: 27/06/2006, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo