Partage
  • Partager sur Facebook
  • Partager sur Twitter

[RUBY] Identifier une touche

Sujet résolu
    3 août 2021 à 8:36:33

    Yo !

    J'aurai souhaité savoir si il est possible de vérifier l'appui d'une touche en Ruby.

    J'aimerai pouvoir exécuter une portion de code seulement lorsque l'utilisateur appuie sur ENTRÉE.
    Pour l'instant je met simplement un gets.chomp. Le soucis c'est que l'utilisateur peut y rentrer ce qu'il veut, ça fait pas sérieux.

    Merci d'avance de votre attention :)

    -
    Edité par Getrox 3 août 2021 à 9:19:42

    • Partager sur Facebook
    • Partager sur Twitter
      3 août 2021 à 13:26:17

      le chomp supprime le '\n' de la chaine taper ('\n' veut dire 'passage à  la ligne suivante' donc 'appui sur entrée') et de toute façon, l'utilisateur doit appuyer sur entrée pour que tu puisses récupérer la saisie, non ? tu n'es pas obligé d'utiliser la saisie de l'utilisateur.

      Je ne vois donc pas vraiment le problème.
      • Partager sur Facebook
      • Partager sur Twitter
        3 août 2021 à 22:03:00

        Le problème c'est que si je veux assigner des touches autres que entrée, tel que espace (par exemple) sans devoir ensuite appuyer sur entée.
        • Partager sur Facebook
        • Partager sur Twitter
          4 août 2021 à 12:09:20

          il faut peut-être plutôt regarder alors du côté de getch > https://riptutorial.com/ruby/example/25041/get-a-single-char-of-input 

          gets attendra toujours l'appui sur entrée

          • Partager sur Facebook
          • Partager sur Twitter
            4 août 2021 à 23:52:35

            C'est exactement ce que je cherchais !

            Merci @umfred !
            • Partager sur Facebook
            • Partager sur Twitter

            [RUBY] Identifier une touche

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown