C # - battiture Console
-
02-10-2019 - |
Domanda
voglio mettere a confronto il tasto premuto in una console per il tasto freccia sinistra se sono uguali significa che il tasto premuto è stato il tasto freccia sinistra, cambio di tonalità del colore della console per ciano ...
sfondoNon sono sicuro di come impostare l'istruzione if, però, perché non so come confrontare le chiavi in ??una console.
using System;
namespace ConsolePaint
{
class MainClass
{
public static void Main (string[] args)
{
ConsoleKeyInfo keypress;
keypress = Console.ReadKey(); // read keystrokes
if ( keypress.KeyChar == ConsoleKey.LeftArrow )
{
Console.BackgroundColor = "Cyan";
}
}
}
}
Soluzione
provare questo:
ConsoleKeyInfo keypress;
keypress = Console.ReadKey(); // read keystrokes
if (keypress.Key == ConsoleKey.LeftArrow)
{
Console.BackgroundColor = ConsoleColor.Cyan;
}
Altri suggerimenti
È necessario utilizzare keypress.Key
(invece di .KeyChar
) - anche la vostra "Cyan"
dovrebbe essere troppo ConsoleColors.Cyan
Prova questo:
ConsoleKeyInfo keypress;
keypress = Console.ReadKey(); // read keystrokes
if ( (int)keypress.Key == (char)ConsoleKey.LeftArrow )
{
Console.BackgroundColor = ConsoleColor.Cyan;
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow