Comment récupérer une touche pressée - C++ - Programmation
Marsh Posté le 12-04-2002 à 11:05:16
Y a kbhit qui dit si une touche à été pressée depuis le derner getch je crois... Mais je suis pas sûr que ce soit une fonction standard, peut-être un truc pour le DOS ou un truc de Borland.
[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]
Marsh Posté le 12-04-2002 à 11:13:38
Efectivement, j'avais écrit un truc pour tester les touches de fonction sous DOS (sous Borland C)
int TouchFonktion(void)
{
int c, extended;
if (kbhit())
{
if (!(c=getch())) /* #0 si caract?re normal, 0 si caractère ?tendu */
extended=(c==0)?getch():0;
}
return (extended);
}
Kbhit(), il lui faut #include <conio.h>
Et d'après le .HLP, Win32 est supporté. Ca devrait "rouler"
Marsh Posté le 12-04-2002 à 11:24:47
tu cours vite après!
Marsh Posté le 12-04-2002 à 12:35:54
ce ne serait pas plutot a l'autre process de gerer les entrées claviers? je pense pas trop que ça soit faisable sans stdin.
Marsh Posté le 12-04-2002 à 12:59:01
Comme quoi ça sert de préciser sous quel OS on développe.....
Et que ce qu'on écrit sous un OS a des fois du mal à fonctionner sous un autre.
Je viens de vérifier dans le fichier HLP : kbhit() n'est pas UNIX_connu. Ca semble le cas des autres fonctions accèdant au clavier. Bigre ! Ca aide pas.
Marsh Posté le 12-04-2002 à 10:56:43
Voila, j'ai un programme qui utilise stdin pour recevoir ses donnée ( via un pipe | ) mais j'aimerait qu'il puisse aussi reagir a des touches au clavier. Je sais qu'il y a une fonction key?? ou un truc comme ca dont je me rapelle pas le nom qui permet de voir si une touche est pressée ( fonction non bloquante et qui n'utilise pas stdin )
QQ sais ?