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

Java Discussion :

équivalent getch du C


Sujet :

Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2007
    Messages : 17
    Points : 19
    Points
    19
    Par défaut équivalent getch du C
    Bonjour,

    J'espère que ma demande n'apparaîtra pas 2 fois, la 1ère tentative n'a pas eu l'air de fonctionner.

    Je suis à la recherche d'une fonction équivalente à getch propre au C, déclarée dans la bibliothèque conio.h.

    J'ai testé pas mal de solution : System.in.read(), les fonctions du package java.util.scanner, mais celles-ci ont toujours le même effet.

    Existe-t-il une fonction qui attendrait l'appuie sur une touche et retournerait aussitôt le code de celle-ci sans attendre l'appuie sur la touche entrée.

    Je précise que je ne souhaite pas faire d'application en swing ni SWT, ce qui serait en effet facile en abonnant un composant à un écouteur.

    Le but du jeu est par la suite, produire un son suite à l'apuie d'un caractère dans un programme thread daemon.
    Ce programme réagirait depuis n'importe quel traitement de texte par exemple, en exécutant un fichier wav correspondant à une touche pressée.

    Malheureusement, j'ai cherché dans divers forums français, anglais, mais rien trouvé, toutes les solutions sont semblables dans l'aparence, après j'ignore si les différentes techniques ont un traitement différent ou non plus approprié à une situation.

    Je vous remercie,

    Bien cordialement,

    Raphaël POITEVIN

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Points : 675
    Points
    675
    Par défaut
    getch est propre au C
    A priori, c'est surtout propre à Windows.

    Il existe un projet pour faire l'equivalent de curses en java, ici

    Que ce soit getch ou curses, de toute facon il faut une console. J'ai l'impression que ce n'est pas exactement ce que tu veux, non?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2007
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Bonjour,

    En effet, ce que je cherche, c'est à capter la pression des touche par mon programme, et faire par la suite un programme en thread daemon qui capterait la pression de n'importe où dans windows.
    Mais apparemment, tu as l'air de dire que la technique serait différente selon que l'on est dans la console java ou non. Même en C, j'aurai pensé que l'on puisse faire un programme résident en mémoire et utiliser la fonction getch.

    Je te remercie pour ta réponse, j'irai voir le projet que tu indiques.
    Cordialement,

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Points : 675
    Points
    675
    Par défaut
    Citation Envoyé par Raphaël POITEVIN Voir le message
    Bonjour,
    En effet, ce que je cherche, c'est à capter la pression des touche par mon programme, et faire par la suite un programme en thread daemon qui capterait la pression de n'importe où dans windows.
    Etant donné que ce genre de choses permet potentiellement de recuperer n'importe quel mot de passe, je pense que tu auras pas mal de difficultés pour trouver la bonne bibliotheque, que ce soit en java ou en c.
    En tout cas, getch ne le permet pas, puisqu'il travaille en mode console.

    Ce qui est sure, c'est que tu ne peux pas le faire avec le jdk.

    Il faut a mon avis que tu cherches d'abord un bibliotheque c qui le fasse, et ensuite voir si il existe une bibliotheque equivalente en java.

    Mais honnetement, je ne pense pas que ce genre de chose existe en java.

    Bon courage

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2007
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    [QUOTE=Sanguko;2807448]Etant donné que ce genre de choses permet potentiellement de recuperer n'importe quel mot de passe, je pense que tu auras pas mal de difficultés pour trouver la bonne bibliotheque, que ce soit en java ou en c.
    En tout cas, getch ne le permet pas, puisqu'il travaille en mode console.

    Ce qui est sure, c'est que tu ne peux pas le faire avec le jdk.
    En effet, je n'avais pas pensé à l'aspect sécurité que prévoie la JVM.

    Peut-être que ce que je cherche à faire est possible en C++. Dans ce cas j'abandonne, trop compliqué je n'ai pas le temps encore de me mettre à ce langage.

    Un grand merci !

Discussions similaires

  1. getch, wgetch...
    Par drKzs dans le forum C
    Réponses: 8
    Dernier message: 16/09/2003, 23h16
  2. Réponses: 3
    Dernier message: 21/08/2003, 14h47
  3. [postgreSQL] équivalent de la function 'instr'
    Par Dra_Gun dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/01/2003, 16h09
  4. getch() avec gcc
    Par Jorus dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 16/12/2002, 14h47
  5. Équivalent du #IFDEF
    Par agh dans le forum Langage
    Réponses: 4
    Dernier message: 14/10/2002, 18h44

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