Вопрос

Я хочу сравнить ключ, нажатый в консоли к клавише со стрелкой влево, если они равны, что означает, что нажата клавиша была клавиша со стрелкой влево, ключ изменяет цвет фона консоли в Cyan ...

Я не уверен, как настроить заявление, если я не знаю, как сравнивать клавиши в консоли.

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";
        }
    }
}

}
Это было полезно?

Решение

попробуй это:

ConsoleKeyInfo keypress;
keypress = Console.ReadKey(); // read keystrokes 

if (keypress.Key == ConsoleKey.LeftArrow)
{
    Console.BackgroundColor = ConsoleColor.Cyan;
}

Другие советы

Вам нужно использовать keypress.Key (вместо .KeyChar) - Также ваш "Cyan" должно быть ConsoleColors.Cyan слишком.

Попробуй это:

    ConsoleKeyInfo keypress;
    keypress = Console.ReadKey(); // read keystrokes 
    if ( (int)keypress.Key == (char)ConsoleKey.LeftArrow )
    {
        Console.BackgroundColor = ConsoleColor.Cyan;
    }
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top