Enregistrer dans une variable la touche appuyée.

Croco - Modifié le 16 janv. 2022 à 02:02
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 - 22 avril 2022 à 18:14
Bonjour,
Je débute en C# et j'aurais aimé savoir s'il était possible de faire en sorte de garder en mémoire la valeur de la touche appuyée par l'utilisateur :

- Demande à l'utilisateur d'appuyer sur une touche de son clavier

- L'utilisateur appuie sur (par ex.) "h"

Objectif : Garder une variable ou est stocké ce "h"

J'ai quelques pistes avec le " Console.ReadKey" mais celui ne me permet pas de garder la valeur dans une variable je cherche donc une alternative.

Merci d'avance.

2 réponses

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
12 janv. 2022 à 08:05
Bonjour

Est ce que tu suis un cours? Si oui lequel?
0
Déjà tu es dans une appli console ou Winform ?

"J'ai quelques pistes avec le "Console.ReadKey" mais celui ne me permet pas de garder la valeur dans une variable" --> Ah bon ??

ReadKey fait bien le Job :

var laTouche = Console.ReadKey(true);

var maVariable = laTouche.KeyChar;
0
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
22 avril 2022 à 14:22
Pour info, y’a pas que winform et console, il y a aussi asp, wpf, ui app et j’en passe.

Par contre,
Console.ReadKey
ça donne une bonne indication
0
Elguevel > Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024
22 avril 2022 à 17:39
J'appel çà faire une réponse pour rien.

Si j'avais demandé à ce dev : "sur quel type de projet es tu ?" j'aurai surement obtenu comme réponse "un projet C#", d'où ma question plus ciblée "Console ou Winform".

Mais je vais pas non plus citer tous les types de projets existant... aucune utilité.

Dans ce cas on peut aussi citer ASP .NET Core, les services windows, les service Worker, Unity, UWP, les bibliothèques de classe, les tests unitaires, les VSIX, Blazor, les projets Azur, et tous les dérivés ASP Net Angular, ASP React, etc... tu vois çà prend vite de la place et personne voudra lire tout çà.

Pour le Console.ReadKey il me semble déjà avoir fourni une réponse, à quoi bon en reparler sans valeur ajoutée ?

Sur ce bonne soirée.
0
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656 > Elguevel
22 avril 2022 à 18:14
J'appel çà faire une réponse pour rien.

comme la tienne. Et si tu veux être désagréable, alors je te réponds plus formellement

Croco n'est pas revenu sur le sujet depuis le 12 janvier,
  • soit le fait que je lui demande s'il suit un cours l'a incité à le regarder de plus près et y trouver seul la solution
  • soit il a cherché un cours et trouvé la solution
  • soit il a trouvé dans un autre forum
  • soit un pote de classe lui a donné la solution
  • soit il a abandonné le développement
  • ...

Bref, il est passé à autre chose et exhumer cette conversation n'avait pas lieu d'être (en plus c'est contraire aux règles de ce forum). J'aurai simplement pu supprimer ton message en t'indiquant que c'est contraire à la charte. Mais je voyais bien que ça partait d'un bon sentiment

ET s'il utilise(ait) Console.ReadKey, c'est qu'il travaillait dans un projet console, donc pas besoin de lui demander.
Si le gars mélange mode console et environnement fenêtré, il faut vraiment le faire exprès et donc normalement il ne fait pas ce genre d'erreur. Donc lui demander ne servait à rien.
J'ai essayé de te le faire deviner gentillement mais manifestement ça n'a pas marché.
0
Rejoignez-nous